我有一个我需要在python中编辑的字符串。让我们说字符串是:thisandthat+this
。字符串可以是任意长度。
现在假装你不知道特殊字符在字符串中的位置/位置。例如,这些字符:+-)(*&^%$#@!
如何获取除特殊字符以外的所有内容?因此,对于上面的示例,我的结果将是thisandthatthis
。
答案 0 :(得分:3)
如果特殊区域中没有空格,您可以使用
# get within group combinations as matrix
grp0 <-t(combn(Y0, 5))
grp1 <-t(combn(Y1, 2))
# get all possible combos of these rows
grpCombos <- expand.grid(1:nrow(grp1), 1:nrow(grp2))
# get all combinations as a matrix
allGroups <- cbind(grp0[grpCombos[,1],], grp1[grpCombos[,2],])
您也可以使用''.join(re.split("[^a-z]", input_str))
re.sub
答案 1 :(得分:0)
列表理解有一种蛮力的方式:
orig = "thisandthat+this"
special = "+-)(&^%$#@!*"
cleaned = ''.join([x for x in orig if x not in special])
答案 2 :(得分:0)
您可以使用Python Regular expression operations。 Python中的re包旨在完全按照您的意愿执行。 Python文档是非常彻底和直接的。你可以学到很多关于这个强大的工具!
这将保留大写字符串值。 如果您只使用[^ a-z]大写字母将被排除。
import re
inputSTring = 'Some old String you put in here!'
word = ''.join(re.split("[^a-zA-Z]", inputString))
#or
word = ''.join(re.finall('[a-zA-Z+]', inputString))
这与This Question非常相似,除了您不想包含空格
答案 3 :(得分:0)
不使用initial_table <- sqldf("select * from initial",
dbname = tempfile(),
file.format = list(header = T, row.names = F))\
Error in scan(file = file, what = what, sep = sep, quote = quote, dec = dec, :
line 8 did not have 137 elements
:
re
使用special = '+-)(&^%$#@!*'
s = 'thisandthat+this'
print(''.join(c for c in s if c not in special))
:
re