Java 如何使用regex根据关键字匹配整行字符串并将其清空

Java 如何使用regex根据关键字匹配整行字符串并将其清空,java,regex,Java,Regex,一个文件中有1000行。我想清空有特定关键字的行。 例如: Input: Danny akdfkldnklnflnwklfnlwen I am sam asndklfnklnfkldn DANNYkandfnkldnfkldnfklnskln He is very well mannered. klansdfnmkldnfkldnfklnsd_danny Output Should be: I am sam He is very well mannered. 关键字为Danny的行应完全删除

一个文件中有1000行。我想清空有特定关键字的行。 例如:

Input:
Danny akdfkldnklnflnwklfnlwen
I am sam
asndklfnklnfkldn DANNYkandfnkldnfkldnfklnskln
He is very well mannered.
klansdfnmkldnfkldnfklnsd_danny

Output Should be:
I am sam
He is very well mannered.
关键字为Danny的行应完全删除,以获得所需的输出。 谢谢你的帮助

我试过这个
但是它不区分大小写。

从命令行:
grep-vi danny input.txt


-v
标志删除与模式匹配的所有行——在本例中为“danny”。
-i
标志使其不区分大小写。

最简单的选项是:

  • 一次读取一行文件
  • 使用
    .contains()
    方法
  • 如果条件成立,则什么也不做
  • 否则,将输出写入另一个文件
  • 如果您想使用正则表达式完成整个过程,可以找到以下表达式:
    ^.*?danny.*.$
    ,并将其替换为空字符串。例如

    注意:您需要向引擎提供以下标志:

    • 多线
    • 不区分大小写

    您对stack并不陌生,您现在应该知道如何做出一些努力。到目前为止你试过什么?你遇到了什么问题?(这些问题应该由您的问题来回答)到目前为止您尝试了什么?我投票结束这个问题,因为没有显示任何努力。当您可以使用
    行。contains(“Danny”)
    ?@mceproper请查看编辑。我试过了,但解决办法不是没有根据的