正则表达式 - 试图获取从字符串中提取的 5 位数单词(presto)
Regex - trying to get the 5 digit words extracted from the string (presto)
我正在尝试检索括号中的每个 5 个数字/字母序列,就像这个例子一样:
accuracy of action - [1232d, 74294, qw23t, 23d45, 76wer, 12874] march
我想从中提取 1232d 74294 qw23t 23d45 76wer 12874
我知道我可以只提取方括号中的一个 5 位数字序列 \[[a-z0-9 ]{5,7}\]
但我不知道如何检索各种 5 位数字序列。
现在,由于 [...]
中的所有单词都由 5 个字母数字字符组成,您可以使用
(?:\G(?!^),\s*|\[)(\w+)(?=[^\]\[]*])
参见regex demo。
详情:
(?:\G(?!^),\s*|\[)
- 前面成功匹配的结尾和逗号以及零个或多个空格,或者 [
char
(\w+)
- 第 1 组:一个或多个单词字符
(?=[^\]\[]*])
- 后跟 [
和 ]
以外的零个或多个字符,然后是 ]
.
我正在尝试检索括号中的每个 5 个数字/字母序列,就像这个例子一样:
accuracy of action - [1232d, 74294, qw23t, 23d45, 76wer, 12874] march
我想从中提取 1232d 74294 qw23t 23d45 76wer 12874
我知道我可以只提取方括号中的一个 5 位数字序列 \[[a-z0-9 ]{5,7}\]
但我不知道如何检索各种 5 位数字序列。
现在,由于 [...]
中的所有单词都由 5 个字母数字字符组成,您可以使用
(?:\G(?!^),\s*|\[)(\w+)(?=[^\]\[]*])
参见regex demo。
详情:
(?:\G(?!^),\s*|\[)
- 前面成功匹配的结尾和逗号以及零个或多个空格,或者[
char(\w+)
- 第 1 组:一个或多个单词字符(?=[^\]\[]*])
- 后跟[
和]
以外的零个或多个字符,然后是]
.