我试图在段落中分割文字。拆分应该在包含以下单词INT的每一行的开头发生。 | EXT。 |。I / E
这是我使用的表达式:
string[] res = Regex.Split(text, "(?=^.+?INT[.]|^.+?EXT[.]|^.+?I/E[.])"RegexOptions.Multiline);
它的效果相当不错,但当一行包含PRINT等字时,它也会生成一个新段落。或者TEXT。
如何修改REGEX表达式以使其符合确切的单词INT。 EXT。 I / E。 ?我试过了
"(?=^.+?\bINT[.]\b|^.+?\bEXT[.]\b|^.+?\bI/E[.]\b)"
但这不起作用。我有什么想法可以使一个确切的单词匹配?
答案 0 :(得分:0)
在C#中,你需要使用逐字字符串文字来声明regexp,否则你可能遇到麻烦,比如这里你有git clone <git-url> /new/repo/copy
cd /my/local/copy
tar cf - . | ( cd /new/repo/copy ; tar xf - )
git diff
作为退格而不是单词边界。
使用
\b
或签约:
@"(?=^.+?\bINT[.]|^.+?\bEXT[.]|^.+?\bI/E[.])"
^ ^ ^ ^
请注意,我在文字句点之后删除了@"(?=^.+?\b(?:INT|EXT|I/E)[.])"
个单词边界,因为这些单词边界在句点之后需要一个单词字符。我想你不需要那个。