我有看起來像這樣的字串:
sentences = "@en:The dog went for a walk@es:El perro fue de paseo"
期望的輸出:
splitted = ['The dog went for a walk', 'El perro fue de paseo']
當前代碼:
splitted = re.split("^@:$", sentences)
因此,id 喜歡根據以加號@開頭并以冒號:結尾的字符拆分句子,因為這些是所有語言的編碼方式,例如 (@en:, @es:, @fr:, @nl : 等等。)
uj5u.com熱心網友回復:
您可以從 @ 拆分到 : 而不使用否定字符類匹配它們之間的任何字符。
結果中可能有空條目,您可以將其過濾掉。
@[^@:]*:
正則運算式演示
import re
sentences = "@en:The dog went for a walk@es:El perro fue de paseo"
splitted = [s for s in re.split("@[^@:]*:", sentences) if s]
print(splitted)
輸出
['The dog went for a walk', 'El perro fue de paseo']
uj5u.com熱心網友回復:
你好試試這個代碼它會幫助你
import re
sentences = "@en:The dog went for a walk@es:El perro fue de paseo"
splitted = re.split(r"@[a-zA-z] :",sentences)
print(splitted)
uj5u.com熱心網友回復:
你需要這個正則運算式: @[^@:] :
首先,@匹配一個@
接下來,[^@:] 匹配任意數量的字符(最少一個)不是@或:
最后,:匹配一個:
import re
sentences = "@en:The dog went for a walk@es:El perro fue de paseo"
splitted = re.split("@[^@:] :", sentences)
print(splitted[1:])
輸出:
['The dog went for a walk', 'El perro fue de paseo']
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/394074.html
上一篇:【51單片機】室友用一把王者時間,學會了去使用數碼管。
下一篇:Java 猜詞游戲
