這應該是一個相當瑣碎的問題,但我花了相當長的一段時間,林無法做到這一點 -正則表達式匹配一個字或一個點
如果這是我的字符串 -
"this/DT word/NN is/VBZ a/DT dot/NN ./."
我想要提取/
的直接鄰居,無論是單詞,逗號還是句號。
(\\w+)/(\\w+)
給出n之前的話/
之後,但不是句號等
我想這一點 - "\\.\\/\\.|(\\w+)/(\\w+)"
爲抓住句號,但似乎並沒有工作。
有人可以幫助請。
謝謝(我R中嘗試這一點)!
這應該是一個相當瑣碎的問題,但我花了相當長的一段時間,林無法做到這一點 -正則表達式匹配一個字或一個點
如果這是我的字符串 -
"this/DT word/NN is/VBZ a/DT dot/NN ./."
我想要提取/
的直接鄰居,無論是單詞,逗號還是句號。
(\\w+)/(\\w+)
給出n之前的話/
之後,但不是句號等
我想這一點 - "\\.\\/\\.|(\\w+)/(\\w+)"
爲抓住句號,但似乎並沒有工作。
有人可以幫助請。
謝謝(我R中嘗試這一點)!
注意\w
只匹配字母,數字和下劃線。點/句點屬於標點符號,可以用類似Perl的\p{P}
或POSIX類[:punct:]
捕獲。因此,理論上,你可以使用類似([\\w[:punct:]]+)/([\\w[:punct:]]+)
(甚至更多POSIXish ([[:alpha:][:punct:]]+)/([[:alpha:][:punct:]]+)
),但我想匹配/
兩側的非空白字符最適合您的目的。
這裏是將正則表達式(\\S+)/(\\S+)
替代:
([^\\s]+)/([^\\s]+)
的[^\s]
裝置比空白其他任何符號。請注意0表示*任何非空白字符。
如果能有上/
雙方都沒有非空白字符,我相信
([^\\s]*)/([^\\s]*)
或
(\\S*)/(\\S*)
將會爲您提供更好,因爲*
將匹配0個或更多字符。
請參閱another demo
我很困惑。請告訴你真正希望從上面的示例輸入 – MohitC
中用正則表達式提取什麼?也許,'(\\ S +)/(\\ S +)'? –
謝謝@stribizhev,這工作! :) – Indi