正则表达式在德国管道之前获取文本|fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
Regex to get text before pipe in Germany|fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
我有一个以这种格式给出的文本
Germany|fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
Regex 必须如何才能获得 Germany
以及 Regex 必须如何才能获得 fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
?
我使用 Nintex Workflow 并尝试了 .+?(?=\|)
,但它无法正常工作。
您可以使用 2 个捕获组,您可以使用 </code> 和 <code>
:
获得匹配项
(\w+)\|([a-f0-9]+(?:-[a-f0-9]+)+)\b
(\w+)
捕获 组 1,匹配 1+ 个单词字符
\|
匹配 |
(
捕获 第 2 组
[a-f0-9]+
匹配 1+ 个字符 a-f 0-9
(?:-[a-f0-9]+)+
重复 1+ 次匹配 -
和 1+ 个字符 a-f o-9
)\b
关闭第 2 组后跟单词边界以防止部分匹配
看到一个regex demo
要获得单独的匹配项,您还可以使用环视。
Match 1 个或多个单词字符断言 |
和行会格式,使用正面前瞻向右:
\w+(?=\|[a-f0-9]+(?:-[a-f0-9]+)+\b)
或 match 类似行会的模式断言一个单词 char 后跟一个 |
到左侧使用正后视:
(?<=\w\|)[a-f0-9]+(?:-[a-f0-9]+)+\b
我有一个以这种格式给出的文本
Germany|fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
Regex 必须如何才能获得 Germany
以及 Regex 必须如何才能获得 fbf4cf3c-ebfe-43c8-aaf9-6811bd3488b0
?
我使用 Nintex Workflow 并尝试了 .+?(?=\|)
,但它无法正常工作。
您可以使用 2 个捕获组,您可以使用 </code> 和 <code>
:
(\w+)\|([a-f0-9]+(?:-[a-f0-9]+)+)\b
(\w+)
捕获 组 1,匹配 1+ 个单词字符\|
匹配|
(
捕获 第 2 组[a-f0-9]+
匹配 1+ 个字符 a-f 0-9(?:-[a-f0-9]+)+
重复 1+ 次匹配-
和 1+ 个字符 a-f o-9
)\b
关闭第 2 组后跟单词边界以防止部分匹配
看到一个regex demo
要获得单独的匹配项,您还可以使用环视。
Match 1 个或多个单词字符断言 |
和行会格式,使用正面前瞻向右:
\w+(?=\|[a-f0-9]+(?:-[a-f0-9]+)+\b)
或 match 类似行会的模式断言一个单词 char 后跟一个 |
到左侧使用正后视:
(?<=\w\|)[a-f0-9]+(?:-[a-f0-9]+)+\b