如何通过其中一个分隔符而不是所有分隔符来分隔字符串?
How do I separate a string by one of the separators but not by all of them?
She is Mary. Ella es Maria.
She is Mary." Ella es Maria."
She is Mary." Ella es Maria."
Hello!. Hola!.
Hello.! Hola.!
Hello! Hola!
How are you?. Como estas?.
How are you? Como estas?
如何使用其中之一作为分隔符,测试它是否可以将字符串与其中之一分开,如果它可以与其中之一分开,则停止与其余部分的测试
.!
、.?
、."
、?"
、?.
、?
、!"
、!.
、!
, ."
or(not and) .
match = line.split(".",1)
n_sense = match[1].strip()
print(n_sense)
有没有办法测试我是否可以用条件拆分它?或者我应该使用正则表达式?
如果这工作正常 print(n_sense)
应该在最后打印:
Ella es Maria.
Ella es Maria."
Ella es Maria."
Hola!.
Hola.!
Hola!
Como estas?.
Como estas?
尝试:
import re
tests = [
"She is Mary. Ella es Maria.",
'She is Mary." Ella es Maria."',
"Hello!. Hola!.",
"Hello.! Hola.!",
"Hello! Hola!",
"How are you?. Como estas?.",
"How are you? Como estas?",
]
for test in tests:
x = re.split(r'[.!?][.!?"]?\s+', test)[1]
print(x)
打印:
Ella es Maria.
Ella es Maria."
Hola!.
Hola.!
Hola!
Como estas?.
Como estas?
She is Mary. Ella es Maria.
She is Mary." Ella es Maria."
She is Mary." Ella es Maria."
Hello!. Hola!.
Hello.! Hola.!
Hello! Hola!
How are you?. Como estas?.
How are you? Como estas?
如何使用其中之一作为分隔符,测试它是否可以将字符串与其中之一分开,如果它可以与其中之一分开,则停止与其余部分的测试
.!
、.?
、."
、?"
、?.
、?
、!"
、!.
、!
, ."
or(not and) .
match = line.split(".",1)
n_sense = match[1].strip()
print(n_sense)
有没有办法测试我是否可以用条件拆分它?或者我应该使用正则表达式?
如果这工作正常 print(n_sense)
应该在最后打印:
Ella es Maria.
Ella es Maria."
Ella es Maria."
Hola!.
Hola.!
Hola!
Como estas?.
Como estas?
尝试:
import re
tests = [
"She is Mary. Ella es Maria.",
'She is Mary." Ella es Maria."',
"Hello!. Hola!.",
"Hello.! Hola.!",
"Hello! Hola!",
"How are you?. Como estas?.",
"How are you? Como estas?",
]
for test in tests:
x = re.split(r'[.!?][.!?"]?\s+', test)[1]
print(x)
打印:
Ella es Maria.
Ella es Maria."
Hola!.
Hola.!
Hola!
Como estas?.
Como estas?