C#で文字列の切り出しと言えばString.Substringメソッドがあります。
Substringメソッドは文字列のインデックスで切り出しを行うので、
文字列の内容が定まっていない場合は使いにくい場合もあります。
Regex.Matchesメソッドは正規表現を使用して
文字列のパターンで切り出しを行うことが出来るので、
Substringよりもシンプルに書くことできる場合もあります。
![](https://digital-predator.com/wp-content/themes/cocoon-master/images/man.png)
私はDBのテーブル作成スクリプトからスキーマ名の切り出しを行う際、
どちらを使用するか検討しましたが
String.Substringメソッドでは5行程度のロジックが必要だったのに対し、
Regex.Matchesメソッドでは1行で済みました。
こんな感じですね。
var s = "CREATE TABLE schema_name.table_name";
Console.WriteLine(Regex.Match(s,@"\S*\.")); //schema_name.
![](https://digital-predator.com/wp-content/uploads/2023/07/reg.png)
コメント