我正在尝试使用PHP对包含多行的字符串进行搜索/替换。我需要检查每一行,如果该行包含双斜线,请删除它以及之后的所有文本,但保持下一行不变。
示例文字
文字第1行的样本
文本行2的样本//要删除,包括双斜线
文本行3的样本
预期输出:
文字第1行的样本 文本行2的样本 文本行3的样本
无需在双斜线之前删除空格。
我找到了这个解决方案:
PHP change whole line if a word exist in a line of .txt file
它几乎符合我的需要,问题在于它取代了整行,而不仅仅是所需的文本。
非常感谢任何帮助。
答案 0 :(得分:1)
虽然我不使用PHP,但您始终可以替换以下正则表达式的所有匹配项:
\/\/.*
请注意,您需要确保"单行"标志(其中dot匹配换行符)未启用。
答案 1 :(得分:0)
您可以在每一行使用以下表达式:
$line = preg_replace("/(.*)\/\/.*/","$1",$line);
这会将Hello // world!
替换为Hello
答案 2 :(得分:0)