也许这是一个简单的问题,但今天我有点坚持。
仅当符号%在字符串中出现一次时,我才需要正则表达式进行匹配。
例如:
/regexpForSymbol(%)/.test('50%') => true
/regexpForSymbol(%)/.test('50%%') => false
谢谢!
也许这是一个简单的问题,但今天我有点坚持。
仅当符号%在字符串中出现一次时,我才需要正则表达式进行匹配。
例如:
/regexpForSymbol(%)/.test('50%') => true
/regexpForSymbol(%)/.test('50%%') => false
谢谢!
你可以使用:
^[^%]*%[^%]*$
锚点在那里确保每个角色都被覆盖,您可能已经知道是什么[^%]。
干得好。不要指望每个人都为你做这些。
^      # Start of string
[^%]*  # Any number of a character not matching `%`, including none.
%      # Matching exactly one `%`
[^%]*  # 
$      # End of string
    你不需要正则表达式。
function checkIfOne(string, char) {
    return string.split(char).length === 2;
}
用法:
var myString = "abcde%fgh",
    check = checkIfOne(myString, '%'); // will be true
    您可以使用match并计算结果数组:
str.match(/%/g).length == 1