簡體   English   中英

如何從結構化字符串中提取單詞?

[英]How to extract words from structured string?

我有以下字符串:

"select model (field1, field2, field3, ...)"

我想寫一些東西來提取模型字段所在的詞。

因此,例如:

select Car (door, wheel, antenna)

方法1返回Car 方法2返​​回列表/數組{door, wheel, antenna}

換句話說,我正在尋找extractModel()extractFields()

我覺得這里需要RegEx ,但是我不知道如何解決這個問題。

這應該工作:

var m = "select Car (door, wheel, antenna)";
Regex r = new Regex(@"select\s+(.*)\s+\((.*)\)");
var model = r.Match(m).Groups[1].Value;
// untrimmmed:
// var fields = r.Match(m).Groups[2].Value.Split(',');
// trimmed:
var fields = r.Match(m).Groups[2].Value.Split(',').Select(s => s.Trim()).ToArray();

另一個方向:

select (\S*) \(([^)]*)

第二個匹配組是一個用逗號分隔的列表,您對其進行了拆分。

http://rubular.com/r/ByLODRGVdy

暫無
暫無

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

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