我想創建一個正則表達式來允許特定字符串的字符之間的空格。正則表達式允許特定字符串的字符之間的空格
上下文是我們有一個不清潔的數據庫,字符串有時包含它們不應該有的空間。我還沒有允許刪除數據庫中的空間(替換('',''))。
我想有一個正則表達式即使字符串被空格切割也能匹配一個字符串。奧巴馬會與「奧巴馬」,「奧瑪」,「奧巴馬」,「奧瑪」,「奧巴馬」,但不是「奧瑪亞」,「奧卡瑪」,「」相匹敵。
可能嗎?如果是,如何?
謝謝。
我想創建一個正則表達式來允許特定字符串的字符之間的空格。正則表達式允許特定字符串的字符之間的空格
上下文是我們有一個不清潔的數據庫,字符串有時包含它們不應該有的空間。我還沒有允許刪除數據庫中的空間(替換('',''))。
我想有一個正則表達式即使字符串被空格切割也能匹配一個字符串。奧巴馬會與「奧巴馬」,「奧瑪」,「奧巴馬」,「奧瑪」,「奧巴馬」,但不是「奧瑪亞」,「奧卡瑪」,「」相匹敵。
可能嗎?如果是,如何?
謝謝。
只需在每個字符之間加上<space>*
即可。
\bo *b *a *m *a\b
或在上面使用[ \t]*
而不是空格。
你可以做到這一點沒有正則表達式也
>>> a = "ob ama"
>>> ''.join(a.split(' ')) == 'obama'
True
這應該工作:
(\S?)*\S
如果前導空格是一個問題,這應該被修改。此外,這允許多個空間,但你沒有真正說出任何有關的。如果您需要允許除常規空間以外的其他類型的空白字符,則需要進行更多修改。這應該處理其他空格字符:
(\S?\s)*\S