我用Aval v2.6,我有一只str子,上面有几处图形,我想去除。 现在,我看着如何使用<条码>载体.punctuation(>)的功能,但不幸的是,我要排除除完整和表单外的所有校正特征。 总而言之,只有5个校正标志,我愿意脱下——()>
。
任何建议? 我认为这是最有效的方式。
增 编
我用Aval v2.6,我有一只str子,上面有几处图形,我想去除。 现在,我看着如何使用<条码>载体.punctuation(>)的功能,但不幸的是,我要排除除完整和表单外的所有校正特征。 总而言之,只有5个校正标志,我愿意脱下——()>
。
任何建议? 我认为这是最有效的方式。
增 编
您可使用str.translate(table [,earchars]) with table
set to None
, 这将产生于、deletechars
。 移除体外:
s.translate(None, r"()" ")
一些实例:
>>> ""hello" (world) ".translate(None, r"()" ")
hello world
>>> "a b c"d e(f g)h i\j".translate(None, r"()" ")
ab cd ef gh ij
您可以列出您不希望的特性:
unwanted = [ ( , ) , \ , " , ]
然后,您可行使<代码>trip_punctuation(s)等职能:
def strip_punctuation(s):
for u in unwanted:
s = s.replace(u, )
return s
>>> import re
>>> r = re.compile("[()\\ "]")
>>> r.sub("", ""hello" (world) \\\")
hello world
Using string.translate :
s = abc(de)fgh"i
print(s.translate(None, r"()" "))
# abcdefghi
或re.sub:
import re
re.sub(r"[\() "]", ,s)
但string.translate
似乎是一个更快的幅度顺序:
In [148]: %timeit (s*1000).translate(None, r"()" ")
10000 loops, best of 3: 112 us per loop
In [146]: %timeit re.sub(r"[\() "]", ,s*1000)
100 loops, best of 3: 2.11 ms per loop
你可以提出你想要取代的特性,代之以你们的选择。
char_replace = {" ":"" , "(":"" , ")":"" , "":"" , """:""}
for i,j in char_replace.iteritems():
string = string.replace(i,j)
my_string = r (""Hello World)
strip_chars = r () "
利用理解:
.join(x for x in my_string if x not in strip_chars)
使用过滤器:
.join(filter(lambda x: x not in strip_chars, my_string))
产出:
Hello World
I have a simple problem that says: A password for xyz corporation is supposed to be 6 characters long and made up of a combination of letters and digits. Write a program fragment to read in a string ...
The == operator is used to compare two strings in shell script. However, I want to compare two strings ignoring case, how can it be done? Is there any standard command for this?
I wrote below code to readin line by line from stdin ex. city=Boston;city=New York;city=Chicago and then split each line by ; delimiter and print each record. Then in yet another loop I try to ...
I tried to print all the possible combination of members of several vectors. Why the function below doesn t return the string as I expected? #include <iostream> #include <vector> #...
I m trying to initialize string with iterators and something like this works: ifstream fin("tmp.txt"); istream_iterator<char> in_i(fin), eos; //here eos is 1 over the end string s(in_i, ...
I have a string "pc1|pc2|pc3|" I want to get each word on different line like: pc1 pc2 pc3 I need to do this in C#... any suggestions??
Is there a PHP string function that transforms a multi-line string into a single-line string? I m getting some data back from an API that contains multiple lines. For example: <p>Some Data</...
I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...