C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

RICHTEXTBOX内の特定の文字列の色を変えたい

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■94702 / inTopicNo.1)  RICHTEXTBOX内の特定の文字列の色を変えたい
  
□投稿者/ TAKE (1回)-(2020/05/07(Thu) 15:21:43)

分類:[VB.NET/VB2005 以降] 

RichTextBoxに表示されている内容で、文字列内の「(!)」の部分の色を赤くしたいです。

Dim search As String = "(!)"
Dim matches = System.Text.RegularExpressions.Regex.Matches(RichTextBox1.Text, search)

For Each match As System.Text.RegularExpressions.Match In matches
Dim start As Integer = match.Index
Dim length As Integer = match.Length
RichTextBox1.Select(start, length)
RichTextBox1.SelectionColor = Color.Red
Next

上記のように書いたのですが、実際に実行した時、
「解析中 "(!)" - 量指定子 {x,y} の前に何もありません。」というメッセージが出て処理が止まってしまいます。

アルファベットだけの文字列を指定したときは動作するのですが、
記号だけの文字列を指定する場合は何かしらの工夫が必要なのでしょうか?
教えていただけたらと思います。
引用返信 編集キー/
■94703 / inTopicNo.2)  Re[1]: RICHTEXTBOX内の特定の文字列の色を変えたい
□投稿者/ TAKE (2回)-(2020/05/07(Thu) 15:34:20)
No94702 (TAKE さん) に返信
> RichTextBoxに表示されている内容で、文字列内の「(!)」の部分の色を赤くしたいです。
>
> Dim search As String = "(!)"
> Dim matches = System.Text.RegularExpressions.Regex.Matches(RichTextBox1.Text, search)
>
> For Each match As System.Text.RegularExpressions.Match In matches
> Dim start As Integer = match.Index
> Dim length As Integer = match.Length
> RichTextBox1.Select(start, length)
> RichTextBox1.SelectionColor = Color.Red
> Next
>
> 上記のように書いたのですが、実際に実行した時、
> 「解析中 "(!)" - 量指定子 {x,y} の前に何もありません。」というメッセージが出て処理が止まってしまいます。
>
すみません自己解決しました。
> アルファベットだけの文字列を指定したときは動作するのですが、
> 記号だけの文字列を指定する場合は何かしらの工夫が必要なのでしょうか?
> 教えていただけたらと思います。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ