簡體   English   中英

正則表達式,帶有數字和一些特殊字符

[英]Regex with digits and some special characters

我需要有關創建可識別文本中標記的正則表達式的幫助。
令牌要求如下:

  • 應該以$開頭和結尾
  • 可以包含字母,數字和_任意組合
  • 只能包含一個連續的. ,意思是:
    • $some.valid.sample$有效
    • $some..invalid.sample$不是
  • 可以包含方括號,但前提是方括號內包含數字,表示:
    • $some.valid[0].sampl$有效
    • $some.invalid[].sample$不是
  • 包含1至64個字符

附加要求(在評論中討論之后):

  • 帶數字的方括號后必須跟. 如果它們不在結尾處(即,如果它們不只是在結束$之前)
  • 長度限制適用於兩個$之間的內容

誰能幫我這個忙嗎?
到目前為止,我有\\$([A-Za-z0-9._]*(\\[\\d+\\])*)+]$

根據注釋中更新的規則,這是您需要的:

\$(?=[^\$]{1,64}\$)\w+(?:\[\d+\])?(?:\.\w+(?:\[\d+\])?)*\$

這個模式怎么樣:

\$\w+?.?\w*?(\[\d+\]?)?.?\w*?\$

你可以在這里測試

雖然有點太狹窄了。 我會接受@Wiktor Stribizew的建議

暫無
暫無

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

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