簡體   English   中英

Python 正則表達式 re.sub 替換為所需

[英]Python regex re.sub substitution to as desired

使用 Python 3 考慮這個正則表達式:

[\||JI|\[|\]NL\||JI|\[|\]]

這將針對一個字符串進行部署,例如:

INLI VERONICA HD / DISNEY XD

Python 使用:

import re

new_string = re.sub("[\||JI|\[|\]NL\||JI|\[|\]]", "", old_string)
print(new_string)

預期 output:

VERONICA HD / DISNEY XD

實際 output:

NL VEROCA HD / DSEY XD

為了說明一些上下文, NL可以包含在字符JI|的任意組合中。 , [] ,因此正則表達式中提供了 or 或選項。 有人建議如何修改以獲得所需的 output?

謝謝

您可以使用

[][|JI]*NL[][|JI]*

請參閱正則表達式演示 詳情

  • [][|JI]* - 零個或多個] , [ , | , JI字符
  • NL - NL字符串
  • [][|JI]* - 零個或多個] , [ , | , JI字符。

請參閱Python 演示

import re
old_string = "INLI VERONICA HD / DISNEY XD"
new_string = re.sub(r"[][|JI]*NL[][|JI]*", "", old_string).strip()
print(new_string)
# => VERONICA HD / DISNEY XD

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM