
[英]How can I set and retain attributes on characters in a Python 2 string?
[英]How can i retain specific characters in a sentence
我想使用正則表達式從句子中刪除某些單詞或字符,但有一些例外。
例如-我有一個字符串, this is [/.] a string [ra] with [/] something
,我想刪除[ra]
, [/.]
但不刪除[/]
。
我用了:
m = re.sub('\[.*?\]','',n)
它工作正常,如何保留此-> [/]
您可以使用
re.sub(r'\[(?!/])[^][]*]', '', n)
參見regex演示 。
細節
\\[
-一個[
char (?!/])
-如果當前位置的右側緊鄰有/]
則負匹配將使匹配失敗 [^][]*
- [
和]
以外的0+個字符 ]
-一個]
字符。 使用此模式\\[(?!\\/\\])[^\\]]+\\]
並將所有匹配項替換為空字符串。
說明:它與[
與\\[
匹配,然后確保,后面的不是NOT \\]
,所以我們不與[\\]
匹配,這是通過負的超前查詢: (?!\\/\\])
,然后它匹配所有內容直到]
和]
本身具有圖案[^\\]]+\\]
[^\\]]+
其它一個或多個字符匹配,那么]
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.