[英]Regex: take everything after match
我在數據框中有很多字符串,一個例子是:
adrianos ristorante 2930 beverly glen circle los angeles 310475 9807 italian
我想在電話號碼后輸入所有的單詞/字符。 我有用於獲取電話號碼和( ([0-9]{6}\\s[0-9]{4})\\s
)之后的空格的正則表達式。 我想要的是這之后的所有角色。 在這種情況下,它是italian
但可能是asian fusion
或indian and thai
這樣的東西。
在熊貓中,您可以使用
[0-9]{6}\s[0-9]{4}\s+(.+)
^^^^^
代碼看起來像
df['col'].str.extract('[0-9]{6}\s[0-9]{4}\s+(.+)')
請注意,應使用捕獲組(...)
包裝需要提取的部分。 參見熊貓參考 :
pat : 字符串
具有捕獲組的正則表達式模式
您可以執行(在Notepad ++中):
查找內容:(。 )([0-9] {6} \\ s [0-9] {4})\\ s(。 )替換為:$ 3
$ 3給出第三個參數,它是匹配電話號碼之后的所有內容。
使用以下正則表達式:/([ /([0-9]{6}\\s[0-9]{4})\\s(.*$)/m
在第二個捕獲組中,您將在電話號碼之后直到行尾為止有任何內容(如果要在字符串末尾之前得到所有內容,則可以省略m
標志)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.