我如何匹配所有的換行字符\ n不是由「在正則表達式 包圍,例如:正則表達式 n不是用雙引號包圍
應該符合這些新行:
"2547026616"
79587329
,"A","2547026616
"79587329","
但不應與這些(除了最後\ n):
"254702661679587329"
"A"
"254702661679587329"
我如何匹配所有的換行字符\ n不是由「在正則表達式 包圍,例如:正則表達式 n不是用雙引號包圍
應該符合這些新行:
"2547026616"
79587329
,"A","2547026616
"79587329","
但不應與這些(除了最後\ n):
"254702661679587329"
"A"
"254702661679587329"
此正則表達式可能是你在找什麼:
(?:(?<!")\n(?!"))|(?:(?<=")\n(?!"))|(?:(?<!")\n(?="))
這將捕捉任何前面沒有引號和/或後面跟着引號的換行符,它使用負面和正面預讀和後視,您可以閱讀關於它們的信息more here。根據你的編程語言,這些可能不被支持,和/或你可能需要在正則表達式中做一些轉義。
這是example on regex101,我用x\n
,但這只是爲了便於顯示匹配。
這是完美的!感謝您的鏈接 –
試試這個:
([^"]\n.?|.?\n[^"])
它周圍的\ n以及(如果存在的話)
如果你也想在最後一行結束與一個雙引號,即使它的2個字符相匹配後面沒有\ n,則正則表達式擴展到:
([^"](\n.?|$)|.?\n[^"])
...如果第一行必須以雙引號開始,然後擴展到:
([^"](\n.?|$)|(^|.?\n)[^"])
您使用哪種編程語言? –
你的問題對我沒有太大的意義。 –
沒有特定的語言只是尋找一般的正則表達式。對不起,什麼不清楚?我很樂意澄清 –