我可以根据python

时间:2017-04-08 14:30:23

标签: python python-2.7

我想将以字母م开头的同一个词分成两个单词,因为exمعجبني分裂为ماعجبني我该怎么办?我正在使用python 2.7

# -*- coding: utf-8 -*-
token=u'معجبني'
if token[0]==u'م':
    token="i want her prosess to split the word into ما عجبني

我想要的输出 ماعجبني 我希望任何人都能帮助我

3 个答案:

答案 0 :(得分:0)

您可以使用re.sub()将空格和其他字符替换为所需的字符。

\\b字边界确保是单词中的第一个字符。带有Python2.7和UTF-8的边界doesn't work well,因此您可以检查在角色之前是否有空格或字符串。

# -*- coding: utf-8 -*-
import re
token = u'ﻢﻌﺠﺒﻨﻳ'
#pattern = re.compile(u'\\bﻡ') # <- For Python3
pattern = re.compile(u'(\s|^)ﻡ') # <- For Python2.7
print(re.sub(pattern,u'ﻡﺍ ', token))

输出:

ما عجبني

英语等同于:

import re
pattern = re.compile(r'\bno')
text = 'nothing something nothing anode'
print(re.sub(pattern,'not ', text))
# not thing something not thing anode

请注意,它会自动检查文本中的每个单词。

答案 1 :(得分:0)

使用str.startswith()检查字符串是否以str开头,可选择限制与给定索引start和end的匹配。 你可以这样做:

# -*- coding: utf-8 -*-
token=u'معجبني'
new_t = token.replace(u'م',u'ما ',1) if token.startswith(u'م') else token
print(new_t)
#ما عجبني

答案 2 :(得分:-2)

使用拆分方法。

x = ‘blue,red,green’
x.split(“,”)

[‘blue’, ‘red’, ‘green’]

取自http://www.pythonforbeginners.com/dictionary/python-split

编辑:然后您可以使用“”.join(arr)加入数组。或者你可以用自己和空间替换欲望字母。

例如:nothing.replace("t", "t ") => "not thing"