[#47501] Hash の制約について( Ruby1.8) — 上田佳寛 <ueda@...>
皆様はじめまして
8 messages
2010/10/01
[#47528] Ruby1.9.1 p430へのRDE インストールについて — eiichi_maekawa@...
5 messages
2010/10/07
[#47529] ruby1.9.2 にて、 IO#reopen で第2引数を省略したときにモードが引き継がれない — jugyo kohno <kkohno@...>
jugyo と申します
11 messages
2010/10/08
[#47562] Re: ruby1.9.2 にて、 IO#reopen で第2引数を省略したときにモードが引き継がれない
— "Y. NOBUOKA" <nobuoka@...>
2010/10/15
信岡です。
[#47563] SketchUpのRubyでwin32oleをrequireする方法について(質問)
— "yahata hisashi" <yahatah@...>
2010/10/16
Google SketchUpのRubyでwin32oleをrequireする方法について教えていただきたく
[#47564] Re: SketchUpのRubyでwin32oleをrequireする方法について(質問)
— Masaki Suketa <masaki.suketa@...>
2010/10/16
助田です。
[#47566] Re: SketchUpのRubyでwin32oleをrequireする方法について(質問)
— "yahata hisashi" <yahatah@...>
2010/10/16
助田 雅紀様
[#47567] Re: SketchUpのRubyでwin32oleをrequireする方法について(質問)
— Masaki Suketa <masaki.suketa@...>
2010/10/16
助田です。
[#47537] Excel用のxmlssファイルを作成するライブラリ exlap_c — "YOSHIIZUMI" <t-yoshiizumi@...>
吉泉といいます。
11 messages
2010/10/10
[#47575] Re: Excel用のxmlssファイルを作成するライブラリ exlap_c
— 染谷 康一 <kouichi_someya@...>
2010/10/18
吉泉さん
[#47547] 正規表現で困っています — 成田恭一[NWH] <ntnarita_prn@...>
Ruby初心者の成田と申します。
7 messages
2010/10/13
[#47578] Ruby1.9.2のRDocで定義が出力されないことがある — KANAI-Takashi <kanai@...>
こんにちは。
6 messages
2010/10/18
[#47579] Re: Ruby1.9.2のRDocで定義が出力されないことがある
— KANAI-Takashi <kanai@...>
2010/10/18
金井です。
[#47588] Re: [ruby-list:47579] Re: Ruby1.9.2のRDocで定義が出力されないことがある
— 青柳政聡 <masaakiaoyagi@...>
2010/10/22
44Gv44GY44KB44G+44GX44Gm44CB6Z2S5p+z44Go55Sz44GX44G+44GZ44CCCgrph5HkupXjgZXj
[ruby-list:47549] Re: 正規表現で困っています
From:
"shinji.a" <andore380@...>
Date:
2010-10-13 02:38:38 UTC
List:
ruby-list #47549
これでいいのかな?
bodys = "<SQL>1,4,10001,20101013,1300,1</SQL><br/><SQL>1,4,1001,20101013,1300,1</SQL><br/>"
tmp = bodys.scan(/<SQL>.*?<\/SQL>/)
tmp.each do |t|
sql = t.gsub(/<\/?SQL>/, "").split(",")
p sql
# ...
end
◆ポイント
>> tmp = bodys.scan(/<SQL>.*<\/SQL>/i); ←間違い
既定では、正規表現は「最長一致」です。
つまり、最初の<SQL>から、bodysの最後の</SQL>までがマッチしてしまいます。
ですので、".*"のあとに"?"を付けて最短一致にする必要があります。
また<br/>はscanから漏れるので考慮する必要はないとおもいます。
以上
=∴=∵=∴=∵=∴=∵=∴=∵=∴=∵=
☆有澤 信治
mail: andore380@gmail.com
=∵=∴=∵=∴=∵=∴=∵=∴=∵=∴=
2010年10月13日11:25 成田恭一[NWH] <ntnarita_prn@net-do.jp>:
> すみません<SQL>〜</SQL><br/>の間違いでした
> ----- Original Message ----- From: "成田恭一[NWH]" <ntnarita_prn@net-do.jp>
> To: "ruby mailing list" <ruby-list@ruby-lang.org>
> Sent: Wednesday, October 13, 2010 11:11 AM
> Subject: [ruby-list:47547] 正規表現で困っています
>
>
>> Ruby初心者の成田と申します。
>>
>> 以下のような文字列から<SQL>と</SQL>の間を切り出してカンマ区切りをsplitをつかって配列にいれようとしています
>>
>> 文字列は以下となります
>> <SQL>1,4,10001,20101013,1300,1</SQL><SQL>1,4,1001,20101013,1300,1</SQL>
>> とひとつの文字列にずらずらと<SQL>〜</SQL>を繰り返して入っているデータからカンマ区切りのデータだけ取り出したいのですが、
>> tmp = bodys.scan(/<SQL>.*<\/SQL>/i);
>> tmp.each do |t|
>> test = t.sub("<SQL>","")
>> test = test.sub("<\/SQL><br\/>","")
>> sql = test.split(",")
>>
>> とすると<SQL>がsqlという配列に入り込んでしまいうまく動作しません。正規表現が理解しきれていないのが原因です。どなたかお知恵をお貸しくださいませんか。
>
>
> --------------------------------------------------------------------------------
>
>
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 9.0.862 / Virus Database: 271.1.1/3193 - Release Date: 10/13/10
> 03:37:00
>
>
>