簡體   English   中英

正則表達式忽略大括號

[英]regex to ignore curly brackets

{unknown string}  
{unknown string  
unknown string}
unknown string

在上述所有四種情況下,如何提出僅識別字符串的正則表達式(未知,因此我無法對特定字符串進行顯式匹配)?

您沒有嘗試太多,對嗎?

string result = Regex.Match(input, "hello").Value;

如果您只需要花括號之間的內容:

string result = Regex.Match(input, @"\{?(.*)\}?").Groups[1].Value;
\w+

它將匹配所有“單詞”字符

如果需要將其概括為“在花括號之間”,可以使用:

\{?(.+?)\}?

意思是:

  1. \\{? -可選的花括號字符。 它之所以能逃脫是因為{在正則表達式中具有特殊含義。 ? 量詞表示01次(因此是可選的)
  2. (.+?) -表示非貪婪模式下的任何內容。 您需要在此處保持非貪婪狀態,以便正則表達式在以下} (如果有的話)之前停止
  3. \\}? -與項目#1相同

暫無
暫無

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

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