提问人: 提问时间:5/9/2019 最后编辑:Emma 更新时间:9/7/2023 访问量:5995
用于匹配空格或标点符号和非字母数字的正则表达式
RegEx for matching whitespace OR punctuations AND non-alphanumerics
问:
我有这个正则表达式:
(\s+)|([.,!?:;'\"\'-])
这与数组中的任何空格或标点符号匹配,但不是所有标点符号,我正在努力找到与任何标点符号匹配的示例。
我考虑过与字符不是字母数字的地方进行匹配,但是这会导致重音字母和不同词典出现问题。
是否有任何标点符号包罗万象,例如(当我说标点符号时,我希望包含符号):
`,.#@
等。
答:
2赞
nalnpir
5/9/2019
#1
如果不需要匹配下划线,则可以使用
\W
它将匹配任何不是数字、字母或下划线的字符,而不是您当前使用的内容。
评论
0赞
5/9/2019
由于重音字符/不同的词典,这不起作用,例如é
0赞
nalnpir
5/9/2019
在发送给您之前,我在正则表达式风暴中尝试过,该字符未被检测到,您希望它被检测到吗?
0赞
5/9/2019
这是我正在使用它的,并且根据regexr
0赞
nalnpir
5/9/2019
regexstorm.net/tester?p=%5cW&i=%c3%a9.fasfsaf.-%c3%a1%c3%a4 检查该链接,我没有看到你说的话
6赞
Wiktor Stribiżew
5/9/2019
#2
您可以使用:[\p{P}\p{S}]
(\s+)|([\p{P}\p{S}])
[\p{P}\p{S}]
将匹配任何标点符号或符号字符的字符。
请参阅这些类引用的子属性列表:
标点
财产 | 意义 | 笔记 |
---|---|---|
个人电脑 | 标点符号,连接器 | 包括“_”下划线 |
钯 | 标点符号、破折号 | 包括多个连字符 |
附言 | 标点符号,打开 | 左括号字符 |
体育 | 标点符号,关闭 | 右括号字符 |
圆周率 | 标点符号,初始引用 | 左引号。不包括 ASCII“中性”引号。根据使用情况,可能表现为 Ps 或 Pe |
PF系列 | 标点符号,最终引用 | 右引号。根据使用情况,可能表现为 Ps 或 Pe |
宝 | 标点符号,其他 |
评论