我正在寻找和替换不在标签内的文本。
标签很简单,并遵循以下模式:
(<[A-Z_]+>)([^<]+)(</[A-Z_]+>)
- 第 1 组:开始标签
- 第 2 组:标记内容
- 第 3 组:结束标签
我需要查看的文本是这样的(每个文本项 1 行,每行可能有多个标签):
What movie did The programmer watch if he didn't watch <NAME>The Office</NAME>?
我需要在“programmer”之前匹配“The”,而不是 <NAME> 标签内的“The”。我希望将其更改为:
What movie did the programmer watch if he didn't watch <NAME>The Office</NAME>?
作为另一个例子,也许更好:
What movie did The programmer watch if he didn't watch <NAME>Dawn of the Dead - The Original Director's Cut</NAME>?
基本上,我希望解决标签外文本的大小写问题。我根本不想触摸标签内的任何文本。这是另一个例子:
Why Don't You watch <NAME>This is Spinal Tap</NAME> on <DAY>Friday</DAY> or whenever?
在那里,我想找到:
- 别
- 你
但不是“脊柱”等,并以这个结束:
Why don't you watch <NAME>This is Spinal Tap</NAME> on <DAY>Friday</DAY> or whenever?
我需要查看的所有字符串都是带有标记文本的句子,它们被放置在字符串内的任何位置。没有标签重叠或包含另一个标签。
任何帮助都将不胜感激。甚至只是一个链接或指向正确路径的指针就跑下来了。
提前致谢!