GVKun编程网logo

Javascript:检查字符串是否仅包含字母、数字、空格和特定符号(js检查字符串是否包含某字符)

16

在本文中,我们将详细介绍Javascript:检查字符串是否仅包含字母、数字、空格和特定符号的各个方面,并为您提供关于js检查字符串是否包含某字符的相关解答,同时,我们也将为您带来关于JavaStri

在本文中,我们将详细介绍Javascript:检查字符串是否仅包含字母、数字、空格和特定符号的各个方面,并为您提供关于js检查字符串是否包含某字符的相关解答,同时,我们也将为您带来关于Java String - 查看字符串是否仅包含数字而不包含字母、Java 检查字符串是否仅包含字母、Java 检查字符串是否包含空格和中文、javascript – 如何检查字符串是否包含子字符串?的有用知识。

本文目录一览:

Javascript:检查字符串是否仅包含字母、数字、空格和特定符号(js检查字符串是否包含某字符)

Javascript:检查字符串是否仅包含字母、数字、空格和特定符号(js检查字符串是否包含某字符)

如何解决Javascript:检查字符串是否仅包含字母、数字、空格和特定符号?

我想做一个字符串验证,规则是字符串只允许有以下字符:

  • 字母
  • 数字
  • 空格或空格
  • 特定符号: ( ) 。 - /

如果字符串包含不在上述列表中的字符,则返回错误结果

我试着这样做:

return value.match(/[().-\/]/) || value.match("^[A-Za-z0-9]+$") || (value.indexOf('' '') !== -1) ? true : false;

如果你只有不允许的字符,它会起作用,如果我允许混合字符,它会返回真

解决方法

// test if string contains something that is not: A-Z,a-z,0-9,whitespaces and symbols :)./(-
const conditionRegex = /([^a-zA-Z0-9:\.\/\(\)\-\s])/g;
return conditionRegex.test(anotherString);

不确定是否要检查是否包含任何不同的字符,但如果是这种情况,您只需要反转。如果输入了不同的内容,我编写的示例将返回 true

PS:反转只需在开始时删除 ^,如下所示:/([a-zA-Z0-9:\.\/\(\)\-\s])/g

Java String - 查看字符串是否仅包含数字而不包含字母

Java String - 查看字符串是否仅包含数字而不包含字母

我在整个应用程序中加载了一个字符串,它从数字变为字母等。我有一个简单的if语句来查看它是否包含字母或数字,但是有些东西不能正常工作。这是一个片段。

String text = "abc"; 
String number;

if (text.contains("[a-zA-Z]+") == false && text.length() > 2) {
    number = text; 
}

尽管text变量确实包含字母,但条件返回为true。和&&应该评估两个条件必须是true为了处理number = text;

===============================

解决方案:

我能够通过使用对此问题的评论提供的以下代码来解决此问题。所有其他帖子也有效!

我使用的有效来自第一条评论。尽管提供的所有示例代码似乎也是有效的!

String text = "abc"; 
String number;

if (Pattern.matches("[a-zA-Z]+",text) == false && text.length() > 2) {
    number = text; 
}

Java 检查字符串是否仅包含字母

Java 检查字符串是否仅包含字母

如何解决Java 检查字符串是否仅包含字母?

你想要什么?速度还是简单?为了提高速度,请选择基于循环的方法。为简单起见,请使用一种基于内衬RegEx的方法。

速度

public boolean isAlpha(String name) {
    char[] chars = name.tochararray();

    for (char c : chars) {
        if(!Character.isLetter(c)) {
            return false;
        }
    }

    return true;
}

简单

public boolean isAlpha(String name) {
    return name.matches("[a-zA-Z]+");
}

解决方法

这个想法是读取String并确认它不包含任何数字字符。因此,“ smith23”之类的内容将不被接受。

Java 检查字符串是否包含空格和中文

Java 检查字符串是否包含空格和中文

Java 检查字符串是否包含空格和中文

package com.demo.uninstaller.utils;

import java.util.regex.Pattern;

import org.apache.log4j.Logger;

public class ChineseCharUtil {

    private static Logger log = Logger.getLogger(ChineseCharUtil.class);

    // true 时Check正常
    public static boolean CheckChineseAndBlankCorrect(String checkString) {

        return (!hasChineseByRange(checkString)) && (checkString.indexOf(" ") == -1);
    }

    public static void main(String[] args) {

        log.debug(CheckChineseAndBlankCorrect("份额无法 3fes"));

//        log.debug(hasChineseByRange("份额无法 3fes"));

    }

    /**
     * 是否包含中文字符<br>
     * 包含中文标点符号<br>
     *
     * @param str
     * @return
     */
    public static boolean hasChinese(String str) {
        if (str == null) {
            return false;
        }
        char[] ch = str.toCharArray();
        for (char c : ch) {
            if (isChinese(c)) {
                return true;
            }
        }
        return false;
    }

    /**
     * 是否全是中文字符<br>
     * 包含中文标点符号<br>
     *
     * @param str
     * @return
     */
    public static boolean isChinese(String str) {
        if (str == null) {
            return false;
        }
        char[] ch = str.toCharArray();
        for (char c : ch) {
            if (!isChinese(c)) {
                return false;
            }
        }
        return true;
    }

    /**
     * 是否是中文字符<br>
     * 包含中文标点符号<br>
     *
     * @param c
     * @return
     */
    private static boolean isChinese(char c) {
        Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
        if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS) {
            return true;
        } else if (ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS) {
            return true;
        } else if (ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION) {
            return true;
        } else if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A) {
            return true;
        } else if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B) {
            return true;
        } else if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C) {
            return true;
        } else if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D) {
            return true;
        } else if (ub == Character.UnicodeBlock.GENERAL_PUNCTUATION) {
            return true;
        } else if (ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {
            return true;
        }
        return false;
    }

    /**
     * 是否包含汉字<br>
     * 根据汉字编码范围进行判断<br>
     * CJK统一汉字(不包含中文的,。《》()“‘''”、!¥等符号)<br>
     *
     * @param str
     * @return
     */
    public static boolean hasChineseByReg(String str) {
        if (str == null) {
            return false;
        }
        Pattern pattern = Pattern.compile("[\\u4E00-\\u9FBF]+");
        return pattern.matcher(str).find();
    }

    /**
     * 是否全是汉字<br>
     * 根据汉字编码范围进行判断<br>
     * CJK统一汉字(不包含中文的,。《》()“‘''”、!¥等符号)<br>
     *
     * @param str
     * @return
     */
    public static boolean isChineseByReg(String str) {
        if (str == null) {
            return false;
        }
        Pattern pattern = Pattern.compile("[\\u4E00-\\u9FBF]+");
        return pattern.matcher(str).matches();
    }

    /**
     * 是否包含汉字<br>
     * 根据汉字编码范围进行判断<br>
     * CJK统一汉字(不包含中文的,。《》()“‘''”、!¥等符号)<br>
     *
     * @param str
     * @return
     */
    public static boolean hasChineseByRange(String str) {
        if (str == null) {
            return false;
        }
        char[] ch = str.toCharArray();
        for (char c : ch) {
            if (c >= 0x4E00 && c <= 0x9FBF) {
                return true;
            }
        }
        return false;
    }

    /**
     * 是否全是汉字<br>
     * 根据汉字编码范围进行判断<br>
     * CJK统一汉字(不包含中文的,。《》()“‘''”、!¥等符号)<br>
     *
     * @param str
     * @return
     */
    public static boolean isChineseByRange(String str) {
        if (str == null) {
            return false;
        }
        char[] ch = str.toCharArray();
        for (char c : ch) {
            if (c < 0x4E00 || c > 0x9FBF) {
                return false;
            }
        }
        return true;
    }
}

 

javascript – 如何检查字符串是否包含子字符串?

javascript – 如何检查字符串是否包含子字符串?

参见英文答案 > How to check whether a string contains a substring in JavaScript?                                    3个
我有一个购物车,在下拉菜单中显示产品选项,如果他们选择“是”,我想让页面上的其他字段可见.

问题是购物车还包括文本中的价格修饰符,每个产品可能不同.以下代码有效:

$(document).ready(function() {
    $('select[id="Engraving"]').change(function() {
        var str = $('select[id="Engraving"] option:selected').text();
        if (str == "Yes (+ $6.95)") {
            $('.engraving').show();
        } else {
            $('.engraving').hide();
        }
    });
});

但是,我宁愿使用这样的东西,这是行不通的:

$(document).ready(function() {
    $('select[id="Engraving"]').change(function() {
        var str = $('select[id="Engraving"] option:selected').text();
        if (str *= "Yes") {
            $('.engraving').show();
        } else {
            $('.engraving').hide();
        }
    });
});

如果所选选项包含单词“是”,我只想执行操作,并忽略价格修饰符.

解决方法:

像这样:

if (str.indexOf("Yes") >= 0)

…或者你可以使用代字号运算符:

if (~str.indexOf("Yes"))

这是有效的,因为如果根本找不到字符串,indexOf()将返回-1.

请注意,这是区分大小写的.
如果您想要不区分大小写的搜索,可以编写

if (str.toLowerCase().indexOf("yes") >= 0)

要么,

if (/yes/i.test(str))

关于Javascript:检查字符串是否仅包含字母、数字、空格和特定符号js检查字符串是否包含某字符的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于Java String - 查看字符串是否仅包含数字而不包含字母、Java 检查字符串是否仅包含字母、Java 检查字符串是否包含空格和中文、javascript – 如何检查字符串是否包含子字符串?的相关知识,请在本站寻找。

本文标签: