Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果字符串中有某个字符,如何使用Python删除/忽略该行?_Python - Fatal编程技术网

如果字符串中有某个字符,如何使用Python删除/忽略该行?

如果字符串中有某个字符,如何使用Python删除/忽略该行?,python,Python,如果多行字符串包含诸如“$”之类的特定字符,如何擦除/忽略该字符所在的整行 注意:任务是删除包含特定字符的任何行,而不是空行 testString = """unknown value 1 unknown value 2 unknown value 3 $ unknown value 4 unknown value 5""" 创建一个生成器,生成由新行字符分割的sri

如果多行字符串包含诸如“$”之类的特定字符,如何擦除/忽略该字符所在的整行

注意:任务是删除包含特定字符的任何行,而不是空行

testString = """unknown value 1
                unknown value 2
                unknown value 3
                $ unknown value 4
                unknown value 5"""

创建一个生成器,生成由新行字符分割的sring。实例化该生成器并在循环中检查其输出。如果它(行)包含特殊字符,则调用生成器的下一步。

首先,将字符串拆分为一个数组,其中每个元素都是一行

myLines = testString.splitlines()
这将输出一个数组,每个元素都是字符串中的一行,现在循环该数组的内容,如果找到带有“$”的元素,只需将其删除即可

for line in myLines:
    for character in line:
       if character == '$'
          myLines.remove(line)

还有另一种称为strip()的方法也可能适合您的需要,请尝试搜索它。首先,您可以使用splitlines函数将字符串拆分为行列表。然后,使用列表理解,您可以遍历这些行,测试每一行是否存在“$”,并返回一个新的行列表,其中没有任何包含“$”的行。然后将带有“\n”(换行符)的新列表重新组合为字符串

代码如下:

testString = """unknown value 1
                unknown value 2
                unknown value 3
                $ unknown value 4
                unknown value 5"""

newTestString = "\n".join([x.strip() for x in testString.splitlines() if "$" not in x])

到目前为止您尝试了什么?此方法的可能副本将删除角色本身。我可以操纵代码以取出整行吗?这不会操纵字符,这将直到字符存在,如果它存在,则删除整个数组元素如果字符=“$”将检查是否有$char,则
myLines。删除(行)
以删除包含字符的整行