我需要删除字符串中每个单词的前几个字母。我知道通过使用类似
<table <?php echo" style='border: $border; padding: $cellpadding; background-color: $bgcolor;' "; ?> >
我可以删除该单词的前3个字母。 我现在需要对同一字符串中的许多单词执行此操作。 例如,如果我得到
st = "testing"
st = st[3:]
我需要删除该单词的前2个字母(随机选择2个),但前提是该单词的长度> = 2。 此示例的输出应为:
"hello this is a test"
(请注意,“ is”已删除,因为它的长度为2个字母)
答案 0 :(得分:2)
假定单词是不包含空格的任何序列:
如果“单词”是指真正的英语单词(不包含标点符号等),请使用nltk.word_tokenize(st)
代替st.split()
。
" ".join([(word[2:] if len(word) >= 2 else word) for word in st.split()])
#'llo is a st'
答案 1 :(得分:0)
直接可以做到:
' '.join([s[2:] for s in st.split()])
但要保持字符长度少于两个:
' '.join([s[2:] or s for s in st.split()])
使用or
是因为正确的是,''
或'a'
将选择'a'