簡體   English   中英

正則表達式匹配帶空格的字符串,直到第一個“ =”

[英]Regex to match a string with spaces until the first “=”

我有一個看起來像這樣的字符串:

abC d eFg=hiJk lmNop

...而且我想從開始就匹配所有字符,直到"="

abC d eFg

我試圖用以下方法完成此任務:

string str = "abC d eFg=hiJk lmNop";
Regex.Match(str, @"^.*?(?==)").ToString()

但是,此正則表達式僅返回最后一個單詞"eFg"

這是模式:

^[^=]*

您還可以按"="分割並采用第一個分割值。

一個相當簡單的實踐是使用Split ,它是非正則表達式。

string test = "abC d eFg=hiJk lmNop";
string current = test.Split('=')[0];

這將返回在=處分割的字符串數組。

  • 索引0是abC d eFg
  • 索引1為hiJk lmNop

使用LINQ,您還可以使用FirstOrDefault()獲取第一個值,與拆分后的[0]索引相比,該值可能更具可讀性。

string current = test.Split('=').FirstOrDefault();

暫無
暫無

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

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