Python 如果某个地方有点或破折号这样的分隔符,如何添加str和str? 如何用STR添加STR,如果它在字符串的中间有分隔符这样的点或破折号。切片对这个没有帮助
示例:Python 如果某个地方有点或破折号这样的分隔符,如何添加str和str? 如何用STR添加STR,如果它在字符串的中间有分隔符这样的点或破折号。切片对这个没有帮助,python,python-3.x,Python,Python 3.x,示例: a = 'Beautiful. is better5- than ugly' b = 'UK- Paris- Check Tech2013' a = 'Beautiful.is better5-than ugly' b = 'UK-Paris-Check Tech2013' 期望值: a = 'Beautiful. is better5- than ugly' b = 'UK- Paris- Check Tech2013' a = 'Beautiful.is better5-tha
a = 'Beautiful. is better5- than ugly'
b = 'UK- Paris- Check Tech2013'
a = 'Beautiful.is better5-than ugly'
b = 'UK-Paris-Check Tech2013'
期望值:
a = 'Beautiful. is better5- than ugly'
b = 'UK- Paris- Check Tech2013'
a = 'Beautiful.is better5-than ugly'
b = 'UK-Paris-Check Tech2013'
您可以使用正则表达式:
import re
pat = r'([.-])\s+|'
re.sub(pat, '\\1', a)
#'Beautiful.is better5-than ugly'
re.sub(pat, '\\1', b)
#'UK-Paris-Check Tech2013'
模式
([.-])\s*
查找
或-
然后将其捕获为第一组。然后,至少有1个水平空间。然后使用\\1
将所有这些替换为第一个捕获的组。如果您不理解正则表达式,可以尝试使用此代码
代码:
结果:
Beautiful.is better5-than ugly
UK-Paris-Check Tech2013
Beautiful.is better5-than ugly
按正确顺序使用时,
replace
非常有用
def format(s: str) -> str:
return s.replace('. ', '.').replace('- ', '-')
print(format('Beautiful. is better5- than ugly'))
print(format('UK- Paris- Check Tech2013'))
# Output
# a = 'Beautiful.is better5-than ugly'
# b = 'UK-Paris-Check Tech2013'
这个答案对你有帮助。这是最简单的解决办法。只有在
'.
或'-'.
s = input("")
s1=s.replace(". ",'.')
s2=s1.replace("- ",'-')
print(s2)
你能澄清一下输入是什么,以及你在添加字符串时实际做了什么吗?@Nick你的原始帖子有什么答案可以帮助你,或者你可以澄清一下你在尝试什么吗?因此,我们或许能够帮助您正确回答您的问题。另外,您在代码方面也尝试了什么。为什么要加入?您已经从一个字符串开始,将其与空字符串连接将只返回原始字符串。