我有一个文件,每行都有以下模式:
A<space>B<space>C
其中:
我可以使用什么正则表达式来分割3行?!
我目前使用类似:substring(*line*.lastIndexOf(" "))
来获取C,更改行以保持A B并重复获取B,然后剩下的是A.
但有没有办法用Regex做到这一点?!一般来说,当知道模式在字符串中向后移动时,如何使用正则表达式?!
答案 0 :(得分:4)
这个正则表达式会这样做:
^(.+?) (\S+) (\S+)$
Here's a demo。在您的示例中,它捕获了三个组:
Hi I'm block A
I'mB
I'mC
说明:
^
字符串的开头(.+?)
捕捉任何角色,但是&#34;非贪婪的&#34; (尽快停止)
空格(\S+)
捕获任何非空白字符组
空格(\S+)
,捕获任何一组非空白字符$
行尾答案 1 :(得分:2)