我想匹配任何文本內部的某些行以及匹配的內部,我希望隨時更換某個字符。 示例文本:替換正則表達式匹配中的字符
任何文字和「多」「更多」它。不要更換此報價
CatchThis(這裏不包括引號,「任何更多的文本」,「等等等等......」)
catchthat(「其他一些文字」,「以下」)
一些文字
CatchAnything「之間」(「更加」,「多」,不包括引號那裏,「文本的牆」)
以上(「文字」「」「)和報價之後。 ..
現在我想替換圓括號內的每個引號可以說,一個散列符號。 預期結果:
任何文字和「很多」「更多」它。不要更換此報價
CatchThis(沒有引號這裏,#任何更多的文本#,#,然後等等等等...#)
catchthat(#some其他文本#,#OR少#)
一些文字
CatchAnything 「之間」(#even更#,#,然後更#,暫無報價出現,#wall的文本#)
以上( 「文字」 「」「)和報價之後。 ..
匹配的線是非常容易的我的模式爲:
(?i)Catch(?:This|That|Anything)[ \t]*\(.+\)
不幸的是,我不知道如何搭配每一個報價和替換它...
非常好!正是醫生的命令。完美地工作......併爲解釋做好準備! – TheFriesel
爲了防止你需要在多個*字符分隔符之間匹配多個標記,我可以建議使用[「tempered greedy token」](https://stackoverflow.com/a/37343088/3832970)而不是否定字符(這裏使用了'[^()「] *') –
感謝您的支持!我會查看它,但首先,我必須完全理解您的模式;) – TheFriesel