编写一个快速的应用程序来帮助我过滤文本文件。
我正在逐行阅读文本文件,并且需要匹配一系列看起来像这样的字符:090129 YBB 100
第一组090129将是6个数字(0-9)。其次是空格,然后是YBB-始终。在那之后,另一个空格,然后是2-3个数字(0-9)。
此模式也将始终是字符串的第一部分。
这是我的技巧:
^[0-9][0-9][0-9] (YBB) [0-9][0-9][0-9]\b
当然,这行不通...但是我是regex新手。提前致谢!
最佳答案
开始:
^([\d]{6})\s(?:YBB)\s([\d]{2,3})\b
说明:
a)从行首开始。
b)匹配6位数字。保存到backref 1。
c)匹配一个空格。
d)匹配“YBB”。不要保存到backref中。
e)匹配一个空格。
f)匹配2-3位数字。保存到backref 2。
当然,重要的是要知道要将此模式的哪一部分检索到反向引用中。如果您提供该信息,我可以编辑我的帖子。
关于regex - 符合此条件的正则表达式:090129 YBB 100,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/649304/