正则表达式匹配没有字母的单词
Regex match words without alphabet
我想匹配所有不包含字母表的单词 [a-zA-Z]
init.
通过案例
- 一些名字
- 另外 3 [VLT]
- 还有! (这个)
失败案例
- 不是 42 这个
- 这是错误的 (!)
- 错误#!
我试过这个正则表达式 /\b[^a-zA-Z ]+\b/
但在某些情况下它失败了
您可以使用
(?<!\S)[^A-Za-z\s]+(?!\S)
参见regex demo。
详情:
(?<!\S)
- left-hand 空白边界
[^A-Za-z\s]+
- 除空格和 ASCII 字母以外的一个或多个字符(如果支持,请使用 [^\p{L}\s]+
支持所有 Unicode 字母)
(?!\S)
- right-hand 空白边界。
我想匹配所有不包含字母表的单词 [a-zA-Z]
init.
通过案例
- 一些名字
- 另外 3 [VLT]
- 还有! (这个)
失败案例
- 不是 42 这个
- 这是错误的 (!)
- 错误#!
我试过这个正则表达式 /\b[^a-zA-Z ]+\b/
但在某些情况下它失败了
您可以使用
(?<!\S)[^A-Za-z\s]+(?!\S)
参见regex demo。
详情:
(?<!\S)
- left-hand 空白边界[^A-Za-z\s]+
- 除空格和 ASCII 字母以外的一个或多个字符(如果支持,请使用[^\p{L}\s]+
支持所有 Unicode 字母)(?!\S)
- right-hand 空白边界。