Invalid 所以我使用了正则表达式 -6ren">
gpt4 book ai didi

javascript - 正则表达式检查单个单引号或单个双引号后的空格

转载 作者:行者123 更新时间:2023-12-01 03:03:46 25 4
gpt4 key购买 nike

如果字符串中没有字母或数字,我必须使用正则表达式检查单个单引号或双引号。

例如:

Max's --> is valid
' --> Invalid
" --> Invalid

所以我使用了正则表达式

^(?=.*[\\w\\d]).+

这工作得很好,除了它还允许

Max" M--> Here there is space after quote which is supposed to be invalid
While Max"M M --> should be valid same goes for single quote

我应该做哪些改变才能达到验证条件?

示例:

至少应包含一个字母或数字字符,不允许使用特殊字符。如果输入字符串是:

' --> Is invalid
" --> Is invalid
# --> Is invalid
^ --> Is invalid
and so on...

但是如果输入字符串是

Max's pc --> Valid
1's --> Valid
Max"s pc --> Valid
1"s --> Valid

但如果是的话

Max' --> Invalid as the word ends with '
Max" --> Invalid as the word ends with "

在这里,我不希望我的单词以 ' 或 "或任何其他特殊字符结尾,但允许使用逗号、分号或句号。

如果需要任何进一步说明,请注明。谢谢:)

最佳答案

我不确定,但这也许可行:

var text = [
"'",
'"',
'#',
'^',
"Max's pc",
"1's",
'Max"s pc',
'1"s',
"Max'",
'Max"',
'Max" M'
];

var expr = /([^\s\w\d]+)(?=[\w\d]+)/;

text.map(function(v) {
console.log(v, expr.test(v));
});

编辑

添加了更多示例

var text = [
"Max's",
'Max"s',
"Max' s",
'Max" s',
];

var expr = /([^\s\w\d]+)(?=[\w\d]+)/;

text.map(function(v) {
console.log(v, expr.test(v));
});

关于javascript - 正则表达式检查单个单引号或单个双引号后的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46322657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com