LoginSignup
0
1
はじめての記事投稿

【VB.NET 学習】メタ文字を文字列として扱う

Last updated at Posted at 2023-07-15

はじめに

業務でvb.netにより業務系アプリを開発しており、
躓いた個所を記録として残すため、ここに書きました。

やりたかったこと

データ出力する文章中に[]が含まれていたら、[]の前に改行をいれる
(前提として、出力しようとしているデータは、文字列の先頭に[]がついた文章が結合されている)
以下のコードを記載し、文章として取得したデータ内の「[」の前に改行を入れるように正規表現を設定した。

Regex.Replace(Eval("文章").ToString, "(?!^)[", "<br />[")

実行したところ、以下の例外が発生!

調べたところ、「[」はメタ文字というもので、「]」とセットで使用しなければいけないことがわかった。
そして、「[」を一つの文字として扱うためには、前に「¥」をつける必要があることがわかり、以下のように修正したところ、想定通りの動きになった!!

Regex.Replace(Eval("文章").ToString, "(?!^)[", "<br />[")

おわりに

メタ文字は他にも存在しており、今回のように正規表現内に設定する時は、注意したいと思う

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1