DOBON.NET DOBON.NETプログラミング掲示板過去ログ

String = ??? が解析できません!!

環境/言語:[WindowsXP , VB.NET , SQL Server 2000]
分類:[.NET]

いつもお世話になります。
コーディングのサンプルで定義されている、Strin = の後ろがどういう意味を持っているのか解りません???
(MaxLenだけは解りますが・・・)
あと、次のNew System.Text.RegularExpression.Regexでreに何が返ってくるのか???

Dim pat As String = "^(.{0," & MaxLen & "}\r\n)*(.{0," & MaxLen & "})?$"
Dim re As New System.Text.RegularExpressions.Regex(pat)

どなたか教えてください。よろしくお願いします。
■No6848に返信(Booさんの記事)
どこの、何の話なのかが全くわかりません。
■No6853に返信(java.lang.Nullpoさんの記事)
> ■No6848に返信(Booさんの記事)
> どこの、何の話なのかが全くわかりません。

Dim pat As String = "^(.{0," & MaxLen & "}\r\n)*(.{0," & MaxLen & "})?$"
Dim re As New System.Text.RegularExpressions.Regex(pat)

     ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑  ↑  

上記の2行の意味です。
> あと、次のNew System.Text.RegularExpression.Regexでreに何が返ってくるのか???
>
> Dim pat As String = "^(.{0," & MaxLen & "}\r\n)*(.{0," & MaxLen & "})?$"
> Dim re As New System.Text.RegularExpressions.Regex(pat)

正規表現のパターンをString型変数patに代入する。
そのパターンを使うRegexをインスタンス化し、reと名づける。

reには何も返ってきません。宣言しただけです。
> Dim pat As String = "^(.{0," & MaxLen & "}\r\n)*(.{0," & MaxLen & "})?$"

MaxLenがString型と仮定して、
Stringは"&"を使って結合できるのは知ってますよね?

"^(.{0," 、MaxLenという変数の中身、"}\r\n)*(.{0,"、 MaxLenという変数の中身、"})?$"の5個のStringを結合した結果をpatに代入しています。
それだけです。
仮にMaxLen = "5"としますと、

pat = "^(.{0,5}\r\n)*(.{0,5})?$"

となってるはずです。
■No6857に返信(bOOさんの記事)
>> Dim pat As String = "^(.{0," & MaxLen & "}\r\n)*(.{0," & MaxLen & "})?$"
>
> MaxLenがString型と仮定して、
> Stringは"&"を使って結合できるのは知ってますよね?

知ってます!!

>
> "^(.{0," 、MaxLenという変数の中身、"}\r\n)*(.{0,"、 MaxLenという変数の中身、"})?$"の5個のStringを結合した結果をpatに代入しています。
> それだけです。

"^(.{0,・・・が?  \r\nが?  ・・・})?$"が?
どういう意味を持ってるのか???
マニュアルやヘルプのどこを見れば1つ1つの意味がわかるのか?

> 仮にMaxLen = "5"としますと、
>
> pat = "^(.{0,5}\r\n)*(.{0,5})?$"
>
> となってるはずです。

したがって、"^(.{0,5}\r\n)*(.{0,5})?$" がどういう意味なのか?
解らないのです。
何分にもVBは初心者に近いのですみません。
VB云々の前に、Regexとは何か分かってますか?
正規表現知ってますか?
あと、自分がどこまで理解していて、どこからが分からないのか書いてください。
少なくとも、あなたの質問6854に対する私の回答は無駄になってしまいました。
あと時間も。
(行頭)
(0〜5個の.に続いて改行コード) を0回以上繰り返し
(0〜5個の.)          を0回か1回繰り返し
(行末)

>マニュアルやヘルプのどこを見れば1つ1つの意味がわかるのか?

MSDNでRegex調べれば分かると思うのですが。
■No6862に返信(bOOさんの記事)
> VB云々の前に、Regexとは何か分かってますか?
> 正規表現知ってますか?
> あと、自分がどこまで理解していて、どこからが分からないのか書いてください。
> 少なくとも、あなたの質問6854に対する私の回答は無駄になってしまいました。
> あと時間も。
>

申し訳ありません。解らないので聞いていたんですが・・・
VB.netのヘルプはVB初心者の私にとってはとてもわかりにくく、
ヘルプのヘルプが欲しいぐらいです。

時間をとらせてしまい申し訳ございませんでした。
もう少し、ヘルプとにらめっこしてがんばってみます。
だから、どこが分からないのかを明記してくださいと。
あなたの最初の質問は"意味"を聞いてますよね?
次は動作内容を聞いてますよね?
意味と動作は違いますよね?
サンプルってことは何かを調べている最中でしょうけど、私たちは何を調べているのかは分かりません。
今自分が何を調べていて、ここまでは分かるけどその先が分からないとか、それぐらいは書けると思うのですが。
VB初心者とか言い訳をしてますが、その前段階の問題です。
ぬるぽさんはあなたの質問が漠然としすぎると指摘しています。
あなたはそれを無視しました。
私は漠然としている質問を、質問内容のとおり答えました。
そしたら動作内容を教えろと。
あなたは自分で調べることを覚えたほうがいいです。
Regexで検索すれば正規表現に関するサイトは沢山引っかかります。
\r\nも検索すれば一発です。

ところで、そのサンプルはどこで手に入れました?
普通サンプルなら動作結果とか解説とかあるはずなんですけど。
■No6869に返信(Booさんの記事)
> 申し訳ありません。解らないので聞いていたんですが・・・
> VB.netのヘルプはVB初心者の私にとってはとてもわかりにくく、
> ヘルプのヘルプが欲しいぐらいです。

「ヘルプ」の「ヘルプ」が欲しいのならば、

> 時間をとらせてしまい申し訳ございませんでした。
> もう少し、ヘルプとにらめっこしてがんばってみます。

これは無意味なのでは?
MSDNなどで、意味のわからない単語に出くわした時はGoogleなどの検索エンジンで調べると良いでしょう。
それが、「ヘルプ」の「ヘルプ」に当たるのではないでしょうか?
それに、検索していないからこそ、聞き手側に質問の意味を介すことができないのでは?

「正規表現」で検索をかければ、

> "^(.{0,・・・が?  \r\nが?  ・・・})?$"が?
> どういう意味を持ってるのか???

少なくとも、こんなレスはなくなります。
これって禁止事項にあるデバッグの依頼ではw
ったくなんでこういう質問が近頃多いんだか・・・
まず、話し方に謙虚さがみられないし、1から10まで全部他人任せ。
自分で調べるということをしない。

マルチポストもおおいし・・・
>Booさんへ

正規表現を勉強したいのであれば、他のサイト(Perlを扱うサイトなど)で調べた方がよいでしょう。また本もたくさん出ています。

Amazon.co.jp: 検索結果 : 正規表現
http://www.amazon.co.jp/exec/obidos/search-handle-url/index%3Dbooks-jp%26sz%3D10%26rank%3D%2Bsalesrank%26field-keywords%3D%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE%26tag%3Dhirnet-22%26tag-id%3Dhirnet-22%26encoding-string-jp%3D%93%FA%96%7B%8C%EA/250-2619281-3985005

>その他の皆様へ

確かにBooさんの質問はここまでくると、マナー違反といわざるを得ず、不愉快になるのは当然で、その気持ちを書かずにはいられないというのも理解できます(この掲示板をよくしたいという気持ちで書いていただいていると思いますので、非常にありがたいことです)。しかし結果としてそのことが逆効果になりはしないかと危惧しています。よって、不快な書込みには、返信の価値がないと判断して、無視していただければと思います。しかし不快な気持ちをぶつける術として、記事を評価するシステムの再導入を検討したいと考えています。

DOBON.NET | プログラミング道 | プログラミング掲示板