regex - 正则表达式用于匹配特定单词并忽略换行

标签 regex powershell regex-lookarounds regex-group regex-greedy

全文=

"
......
A= 
B= 12345 
....."

我想在A =和换行符之间得到空字“”。
并希望在B =和换行符之间获得“12345”。

如何使用正则表达式获取单词?
(?<=A=)\s*(\S*)\s* 

要么
(?<=B=)\s*(\S*)\s* 

但是,它也带来了下一行内容。

最佳答案

这个模式怎么样:

(?<=[A-Z]=)[ ]*(\S*)

通过首先在A=(或B=等)之后仅允许空格,此模式避免了换行到下一行的问题。这意味着对于A=行,其后仅包含换行符,[ ]*将匹配零次。其次,对于内容,它仅使用(\S*),它也不会占用空格并换行到下一行。

Demo

关于regex - 正则表达式用于匹配特定单词并忽略换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56034285/

相关文章:

java - 如何通过正则表达式提取 { } 之间的值?

javascript - 如何在 JavaScript 中生成单词中字符替换的所有可能组合?

powershell - 从CSV/TXT创建文件夹并将匹配的列移到Powershell或Batch中的新目录中

powershell - New-Object 上的 Windows RT Powershell(权限被拒绝)

mysql - 需要正则表达式在 Mysql 中基于搜索参数进行匹配,其中字符是阿拉伯语

php - 如何在正则表达式的环视中匹配多个(N)空格?

mysql - Mysql 中任意数量字符之间的电子邮件正则表达式

Python 如何将带连字符的单词与换行符合并?

windows - powershell:更改 Windows 7 计算机上服务的启动类型