Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 用于查找字符之间字符串的第一个匹配项的正则表达式_Regex_Powershell - Fatal编程技术网

Regex 用于查找字符之间字符串的第一个匹配项的正则表达式

Regex 用于查找字符之间字符串的第一个匹配项的正则表达式,regex,powershell,Regex,Powershell,以下是我的文本: Dddd, Cccccccc - abcdefgh|abcdefgh|m$P,o29L|SomeOtherText |abcdefgh||mmmin|| Aaaa, Bbbbbbbb - y123xxyz|y123xxyz|m$P,o29L|SomeOtherText |y123xxyz||mmmax|| 我希望在第一个字符之后和第二个字符之前返回abcdefgh和y123xxyz,并且只从以单词字符开头的行返回。正则表达式是什么样子的 到目前为止,我有这样一个表达: (?&

以下是我的文本:

Dddd, Cccccccc - abcdefgh|abcdefgh|m$P,o29L|SomeOtherText
|abcdefgh||mmmin||
Aaaa, Bbbbbbbb - y123xxyz|y123xxyz|m$P,o29L|SomeOtherText
|y123xxyz||mmmax||
我希望在第一个字符之后和第二个字符之前返回abcdefghy123xxyz,并且只从以单词字符开头的行返回。正则表达式是什么样子的

到目前为止,我有这样一个表达:

(?<=\|)(\w+)(?=\|)
(?您可以使用

(?<=^\w[^|]*\|)\w+(?=\|)

(?你考虑过使用简单的字符串运算符吗?看起来在
|
上拆分第二项对你的情况有效。@Lee_Dailey查看“仅从以单词字符开头的行开始”,正则表达式看起来也可行。@RyszardCzech-是的!从限定符测试开始,然后拆分,最后-使用
[1]
结果数组的项。[grin]