[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 02/13 08:03 / Filesize : 135 KB / Number-of Response : 546
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

正規表現 Part10



1 名前:デフォルトの名無しさん [2012/06/23(土) 01:38:40.22 ]
正規表現(Regular Expression)スレです。

質問する場合は必ず実装言語や処理系ソフトウェア名を示してください。

正規表現 Part9
toro.2ch.net/test/read.cgi/tech/1323566370/

天ぷら等2以降

152 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 00:56:45.81 ]
それをやるなら "gr[ae]y" か "gr(a|e)y" だろ

153 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 02:44:20.82 ]
 韓国開発研究院(KDI)が5日に発表した報告書によると、統計庁の2011年の家計金融調査を分析した
結果、借金を抱える世帯の33%が赤字状態で、7%は負債が資産を上回っていることが分かった。

 韓国の世帯数は1757万世帯(2010年現在)で、うち借金がある世帯が63%を占めることから、借金があり、
かつ赤字状態の世帯は365万世帯に達することになる。また、負債が資産よりも多く、かつ赤字状態の世帯は
全体の3.3%(36万世帯)だった。特に債務返済能力は低所得層ほど低いことが分かった。

 漢陽大のハ・ジュンギョン教授は「不動産市場の低迷で資産の売却が難しく、借金があり赤字状態の世帯が
さらに借金を重ねる悪循環に陥る可能性がある」と懸念を示した。

キム・テグン記者


朝鮮日報/朝鮮日報日本語版: 2012/08/06 09:08
www.chosunonline.com/site/data/html_dir/2012/08/06/2012080600636.html


154 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 11:00:19.07 ]
とりあえずperlで


<div class="test">

<div class="block">
だkfj;ぇkたj;
わえltかj;うぇlk

あうぇktじゃ;うぇkl
</div>

<pre>

</pre>

</div>



っていうhtmlのコードがあるとして、
<div class="test">から一番下の</div>までの中にあるデータを取得したいんですが、
これにマッチする正規表現ってありますか?

この中にも</div>がいくつかあるので、最後の</div>にマッチする前に何回かひっかかっちゃってうまくいかないんです
正規表現のプロの皆さんよろしくお願いします。

155 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 11:03:10.34 ]
マッチの終わりに</pre></div>を指定すれば・・・

156 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 11:13:33.16 ]
正しいタグの組じゃなくて最後の</div>でいいなら 最長一致の
<div class="test">.*</div> でいいわけで
そうでないなら html解析するべき

157 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 11:14:43.84 ]
あ、すいません。
最後の</div>のまえに必ず</pre>があるとは限らないんです。
やっぱ最後の</div>の直前か直後に他にはない決まった文字とかがないと無理っすよね〜

158 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 11:15:43.77 ]
>>156
あ、すいません。
最後の</div>

の後ろにも</div>とか
色んな文字が並んでます。

やっぱ>>157
で言ったとおり無理ですよね〜

159 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 12:19:38.47 ]
>>157
入れ子になった完全な<div> </div>のなかにあるデータというと
それはタグ(例えば<div>)を含んで構わないということかな。

160 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 12:24:19.36 ]
>>159
はい大丈夫です



161 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 12:45:43.22 ]
<div(?(R)[^>]*| class="test")>.*?(?R).*?<\/div>
PCRE だとこんな感じ?

162 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 12:52:30.80 ]
スレチだけど素直にxpath。
$ xmlstarlet sel -t -m "//div[@class='test']/*" -c . -n

163 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 12:54:38.43 ]
やっぱりperlじゃなくてPHPでお願いします。
正規表現が無理ならPHPの関数使ってでもいいです

164 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 13:13:13.15 ]
>>161
まんまだと駄目で
(?R)*にしても  <div class="block">の閉じで終わってしまう。

165 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 16:00:17.05 ]
PHPでお願いしますって言ってた質問もういいです。
preg_matchを繰り返せばなんとかとりたい部分だけ取れました。
ご迷惑おかけしました。

166 名前:デフォルトの名無しさん [2012/08/09(木) 03:48:44.49 ]
性器表現

167 名前:uy mailto:sage [2012/08/10(金) 18:07:28.45 ]
rubyの正規表現の質問です
連続して10回以上...無限にマッチさせる構文ってないですか?
/6{9}6+/
いまはこんな事をやっていますがもう少しスマートな書き方あれば教えて欲しいんですけど

168 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 18:34:04.25 ]
>>167
/6{10,}/

169 名前:uy mailto:sage [2012/08/10(金) 18:36:37.17 ]
>>168
ありがとうございます

170 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 18:38:34.97 ]
改行を含むながー文字列で先頭にタブ文字が入ってるやつがあります。
このタブだけにマッチするには、

^\t

でいいんでしょうか?

^\t$

こうかと思ったんですがこれだとマッチしませんでした。



171 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 18:44:36.79 ]
>>170
>改行を含む

172 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 18:46:38.61 ]
質問しなおします。

改行を含むながーい文字列があります。この文字列の中にはタブ文字も含まれています。

この文字列の一番先頭にタブ文字が紛れ込んでいるやつがあります。
これを除去したいんです。

PHPのpreg_replaceを使うとしたら、

preg_replace("/^\t$/","",$str);

こうですか?
これじゃマッチしませんでした。。

173 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 19:34:43.94 ]
>>172
それは多分タブ文字しか含まない文字列にのみマッチする。
長いだっのか。ちゃんと書こう。

174 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 20:55:35.73 ]
文字列の先頭しか必要ない話なのに、文字列が改行含むかどうかが関係するのか?
それとも文字列には複数行が含まれていて、
そのどの行の先頭でも同じ変換をしないといけないわけなのか?

175 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 21:07:25.04 ]
>>174
それは$strに代入したあなたに聞いて。
あなたの書いた正規表現は文字列の1文字目がタブで、それが文字列の最後の文字だということ。つまり文字列が1文字でかつタブという正規表現。必要ないと言っても、必要としているスクリプトになってるから。

176 名前:デフォルトの名無しさん [2012/08/10(金) 21:27:21.32 ]
私は>>174じゃありません

>>174
なんか正規表現の中で文字列の先頭を改行の後とみなすやつがあったので一応書いておきました。
もしそいつにもマッチしたら困るので


>>175
じゃあ最初の文字だけにマッチさせるにはどうしたらいいですか?
とにかく先頭にタブ文字がある文字列をピックアップしたいんです。
あ、じゃあsubstrで一文字取って、調べりゃいいですね。

皆さんありがとうございました。

177 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 21:32:17.10 ]
正規表現でやりたきゃ$が不要。
しかし正規表現必要ないな。

178 名前:デフォルトの名無しさん [2012/08/11(土) 06:43:50.15 ]
>>176
PHPのは知らないけどPerlの正規表現では^は正規表現フラグm(マルチライン)が有効になってると、
^が文字列先頭以外にも改行直後(行頭)にもマッチしてしまうので、
正規表現フラグ関係なく、改行が含まれるかもしれない文字列の先頭のみにマッチさせたい場合は、
\Aを使うべし

179 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 14:09:27.76 ]
t

180 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 14:17:57.80 ]
>>178
そういう回答求めてました
ありがとうございました



181 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 16:22:33.21 ]
全体が10文字以内でaとbとcをこの順番に含むパターンってどうかきますか?

182 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 16:40:58.70 ]
>>181
プログラムを使えるなら楽なんだが… たぶん、正規表現だけってことだよねぇ

183 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 16:44:12.55 ]
xxx/abc/dfg/hij
xxx/abc/hij
この二つの文字列にマッチさせるようにするにはどうしたらいいでしょうか?

184 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 16:50:11.71 ]
>>183
「/abc/」を含む文字列すべて、ならこれでどうでしょうか?

.*/abc/.*

185 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 16:52:50.83 ]
xxx/abc/(dfg/)?hij で行けそうな


186 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 17:19:33.04 ]
>>184
>>185
ありがとうございます

187 名前:デフォルトの名無しさん [2012/08/11(土) 19:03:41.15 ]
>>181
> 全体が10文字以内でaとbとcをこの順番に含むパターンってどうかきますか?
.*a[^c]*b[^a]*c.* と .{3,10} の肯定先読みか肯定戻り読みを合体させれば、
できるんじゃないかしら?

もっとも「1qabbbcd90」とか「aあbいbc」みたいなaとcに囲まれるbの個数が2個以上はNGで
1個限定ということなら前者の正規表現も更にカスタマイズが必要になるけど

188 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 05:04:21.31 ]
emacs-lispの正規表現でわからない点があるので教えてください。

Cソースコードの
#define
プリプロセッサにマッチさせるための正規表現で下記が良く使われているのですが

"^\\s-*#\\s-*define"

-
↑のマイナスって意味ってありましたっけ?
www.kt.rim.or.jp/~kbk/regex/regex.html
とかみてもそれらしいのが見つからないのですが・・・

#defineに一致させるためなのであれば
行頭のスペース任意数以上(0〜N回)#スペース任意数(0〜N)define
なので

"^\\s*#\\s*define"

とかで良いきがするのですが・・


189 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 07:43:45.93 ]
>>188
もう emacs 使ってないので、はずしてるかもしれないけど

EmacsLispの正規表現「\s」は空白文字類じゃない。
d.hatena.ne.jp/holidays-l/20070602/p1

じゃないの?

190 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 08:18:54.14 ]
>>189
> >>188
> もう emacs 使ってないので、はずしてるかもしれないけど
>
> EmacsLispの正規表現「\s」は空白文字類じゃない。
> d.hatena.ne.jp/holidays-l/20070602/p1
>
> じゃないの?
え・・・
マジすか・・
確かにコレなら上の構文は納得です。

ありがとうございました。



191 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 19:24:13.57 ]
javaですが、日本語などの全角文字を探す場合、ascii以外という発想で「[^\p{ASCII}]」や「.*[^ -~].*」を使っていますが、
もっとスマートな別な表現はあるでしょうか?

192 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 20:43:41.61 ]
>>191
java.lang.Character.UnicodeBlockで定義されてるものは使えるそうだけど。
全角というのは表示上のことだし、日本語で使うという風にも区切られていない。
HIRAGANA KATAKANA KANJIとかすると半角カナとかも含まれそう。

193 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 00:29:42.79 ]
ambiguousとかどうするよ?
わざわざ前後の文脈までみるのか?

194 名前:デフォルトの名無しさん [2012/08/17(金) 13:40:24.55 ]
ruby初心者でテキスト処理初心者です
以下のテキストから「かきくけこ」を抜き出したいです
=テキスト=
(1)あいうえお
→かきくけこ
(2)さしすせそ
.scan(/あいうえお(.*?)さしすせそ/m)と書くと「→」と「(2)」が邪魔です
.scan(/あいうえお\n→(.*?)(2)さしすせそ/m)と書くと何も取り出せません
なぜうまくいかないのでしょうか

195 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 13:46:06.59 ]
カッコをエスケープしてないから \(2\)

196 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 13:51:05.45 ]
なるほど!ありがとうございます

197 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 13:58:31.90 ]
.scan(/あいうえお\n→(.*?)\(2\)さしすせそ/m)にしても何も取り出せませんでした…

198 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 15:10:47.81 ]
取り出し云々の前に、マッチするかよく確認するべきじゃないの。
例えばこんなの。
rubular.com/r/GfgQLaoQoT

199 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 15:27:10.60 ]
急がば三回まわってワンとお鳴き

200 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 15:32:56.75 ]
>>198
これだと>>197の書き方でうまくいく判定がされるのですが実際にプログラムを動かすとどこもマッチしないのです
\nのあたりに問題があるのでしょうか



201 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 15:36:36.39 ]
その人は、うまくいかない例でやってみてどうよ?って聞いてるんだよ

202 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 15:53:41.75 ]
できました!ありがとうございます

203 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 23:12:39.31 ]
h?t?tps?://.+
という定義ではすべてのURLがマッチしますが
www.hogehoge.jpg
といった画像リンクは除外するようにする定義を教えてください
h?t?tps?://.+(?!jpe?g|png|gif|bmp)
としてもうまくいきませんでした

204 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 03:23:09.41 ]
www.hogehoge.jpg
これが画像のURL??

まあそういう仕様ということで、こんな感じかな。
h?t?tps?:\/\/.+\.(?!(jpe?g|png|gif|bmp)(?=\s|$))[a-z]+(?=\s|$)

205 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 08:17:42.50 ]
どんなURLだw

206 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 09:15:56.05 ]
自分だったら複数回grepで実現するかな。

欲しい拡張子以外を、順次消していく(該当行を\r\nに置換)

207 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 09:52:20.64 ]
先読みと後読みを勉強すれば解決するな

208 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 17:26:30.66 ]
zasshi.news.yahoo.co.jp/article?a=20120819-00000784-davinci-ent
こういったURLにはマッチしないんですかね
ここで調べました
PHP正規表現チェッカー ver1.0.3
www.rider-n.sakura.ne.jp/regexp/regexp.php

209 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 20:08:06.25 ]
>>208
最初から十分な希望例を挙げて欲しいんだけど。おかしな例じゃなくてね。
環境も分からないし。テンプレ>>1-4も読んでね。
h?t?tps?:\/\/.+\.(?!(jpe?g|png|gif|bmp)(?=\s|$|\?))[^.\s]+(?=\s|$)

>PHP正規表現チェッカー ver1.0.3
これは正しく動作してるように思えない。以下をオススメする。
www.rexv.org/
rubular.com/
www.gethifi.com/tools/regex

210 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 20:13:46.87 ]
正しく動いていないというのはどういうところ?



211 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 20:38:31.91 ]
>>209
分かりました
スレ汚しすみませんでした

212 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 17:33:42.49 ]
「$」の直前に「'」がなく、さらに「$」よりも前に「#」が一切ない正規表現ですが、
以下だとエラーになってしまいます。

 (?<!^[^#]*)(?<!')\$

上記の正しい正規表現を教えていただけないでしょうか?

213 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 17:53:09.25 ]
[^#]*[^,#]\$
では駄目かどうか教えて。

214 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 17:55:35.22 ]
>>213
…すんません、ありがとうございます。
なんてばかだったか…

ちなみに戻り読み否定で「#.*」は使えないのでしょうか?

215 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 18:04:00.12 ]
可変長否定戻り読みとなると、使える環境は限られます

216 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 15:14:46.73 ]
簡単な質問かも知れませんがお願いします

「家具」を消すには /(家具)/ ですが
あくまでも例えですが「木目調家具」は消したくない場合はどのように書けばいいのでしょうか

217 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 18:57:17.56 ]
>>216
少し上のレスにもある否定戻り読みを使って
(?<!木目調)家具

218 名前:デフォルトの名無しさん [2012/09/11(火) 07:26:49.98 ]
青空文庫の注記をエディタ類の置換でやろうと思うのですが

なんとか吹喋[#「喋」に「ママ」の注記]かんとか
   ↓
なんとか吹<ruby><rb>喋</rb><rp>(</rp><rt>ママ</rt><rp>)</rp></ruby>かんとか


\1[#「([^「」]+?)」に「([^「」]+?)」の注記]
とか後方参照は出来るエディタは無かったですね

やっぱり スクリプト組むしかないのかな

219 名前:デフォルトの名無しさん [2012/09/11(火) 16:55:28.27 ]
オートマトンって何ですか?

220 名前:デフォルトの名無しさん mailto:sage [2012/09/11(火) 19:00:49.57 ]
殴投魔団



221 名前:デフォルトの名無しさん mailto:sage [2012/09/11(火) 19:39:19.44 ]
状態機械
ja.wikipedia.org/wiki/%E6%9C%89%E9%99%90%E3%82%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%88%E3%83%B3

222 名前:デフォルトの名無しさん mailto:sage [2012/09/12(水) 03:32:54.57 ]

https://example.com/(abcABC123)/apple/(123456)
にはマッチして
https://example.com/(abcABC123)/apple/(123456)/orange/1
にはマッチしない、定義を教えてください。
()内は変動します。
https?://example\.com/[^/]+/apple/\d+
ですと、両方マッチするみたいですが、上だけにマッチするように手直しよろしくお願いします。

223 名前:デフォルトの名無しさん mailto:sage [2012/09/12(水) 04:08:54.24 ]
最後に $ を付ける?

224 名前:218 mailto:sage [2012/09/12(水) 07:13:43.25 ]
結局 >>218 はWSH(VB)で

s = rfp.ReadText
  Set regEx = New RegExp
  Set reg2 = New RegExp
  regEx.Pattern = "[#「([^「」]+)」に「([^「」]+)」の注記]"
  regEx.Global = True
  Set Matches = regEx.Execute(s)
  For Each Match in Matches
  d1 = regEx.Replace( Match.Value,"$1" )
  d2 = regEx.Replace( Match.Value,"$2" )
  d = d1+ Match.Value
  reg2.Pattern =d
  s = reg2.Replace( s , "<ruby><rb>"&d1&"</rb><rp>(</rp><rt>"&d2&"</rt><rp>)</rp></ruby>")
  Next
wfp.WriteText s

とやりました

225 名前:デフォルトの名無しさん mailto:sage [2012/09/12(水) 07:32:51.85 ]
>>224
ていねいな報告、ご苦労さまです。

226 名前:デフォルトの名無しさん mailto:sage [2012/09/12(水) 08:48:10.11 ]
マッチさせた部分文字列が後にあるから、2度読みしないとたぶん無理だと思うからスクリプトで処理して正解だと思うよ

227 名前:デフォルトの名無しさん mailto:sage [2012/09/12(水) 14:29:55.98 ]
>>223
ありがとうございます

228 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 01:57:30.02 ]
すみません、質問させて下さい

一括ファイル整理ソフト:Classifier
ttp://realize.jounin.jp/classifier.html

こちらのソフトを使い、正規表現で大量にあるファイルの整理を行おうとしております

【写真】[イベント名] [苗字名前] 詳細.jpg

こういった形式のファイルに対して、苗字の頭一文字目が『あ行』なら
あ行のフォルダへ移動、『い行』ならい行のフォルダへ移動、という
処理をさせようと、以下の正規表現を入力し実行しました

【[^】]*】\[[^\]]*\]\s\[[亜-音][^\]]*\].*

結果を見ると、仕分けは実行されたのですが、あ行以外の苗字の方もあ行
フォルダへ仕分けされてしまいました。

こちらのソフトは開発環境がVisualBasicで、内部的には2バイトのUnicode規格に
基づいているせいで、シフトJISの漢字コード(音読み)で仕分けるにはこの正規表現
では駄目との事でした。

Unicodeの正規表現でシフトJISコードの亜-音と同じ結果が出せる正規表現方法は
無いでしょうか?もしご存知の方がいらしたら教えて下さい

よろしくお願いいたします

229 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 04:46:24.97 ]
あるかないかで言えばあるけどそんな単純じゃないよ

230 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 12:56:11.80 ]
ファイルが大量にあることは想像できました。
よくあるリネームではなく、特定フォルダーへの移動でしょ?
だったらdir結果をテキストエディターで1行ずつ
move ファイル名 読み仮名_あ_始まり\
って書いたら?

読みが「あ」で始まるかどうかは単なる漢字の音読み、訓読みでは判断できない場合が存在します。
人名だとどうしても人力で頑張るしかない場面だと思いましたがどうでしょうか。

自分だったら1,000人程度だったら空いた時間にしこしこ作業しますね。



231 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 14:05:44.25 ]
migemoでふりがな取得出来ないかな…

232 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 14:33:45.73 ]
>>231
kakashi

233 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 19:45:32.48 ]
これかー
kakasi.namazu.org/index.html.ja

234 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 19:56:55.37 ]
debianとかはパッケージに含まれてた気がする。<kakasi
hがあるかないかで良く見つからないけど。
文章をchasenで解析して単語をkakasiで読み順に並び替えてた記憶がある。

235 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 10:21:00.35 ]
たとえば河野と書いて「かわの」さんも「こうの」さんもいるのでkakasiでも
どうにもならないと思うけどなぁ。割り切れるならいいけど。


236 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 11:24:02.90 ]
お題はそんな読みを厳密にやる必要なくて、[亜-音]レベルの仕分けでいいんでしょ?

[亜唖娃阿哀愛(途中は略)音]って正規表現生成すれば?
Shift JISで↑こういう正規表現作ってから、(その方が生成プログラムが簡単なので)
Unicodeに変換すればいいよね。GUIのアプリなら、コピペするだけじゃないのかな?

237 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 11:45:23.31 ]
コレだけだけど、ア行の苗字の1/10もない気がする
亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷
安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣
謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭
院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲
荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円 
園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押
旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音

238 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 13:13:07.21 ]
あれま

239 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 13:45:38.31 ]
こういう事例見ると、ファイル名に全角カタカナでフリガナを持っとくのも有りだな。

240 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 21:08:24.29 ]
>>239
そのアイデア、正規表現関係ないけどファイル整理に便利そうだな。
いや、ファイル検索のときは正規表現使うから関係あるか。



241 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 22:07:01.78 ]
ファイル名に頼らないで、一行目に漢字とカナとローマ字入れとくとか、dbに入れといた方がよさそうだ。

242 名前:デフォルトの名無しさん mailto:sage [2012/09/19(水) 12:04:10.79 ]
dbってlinuxコマンドのdb?

RDBMS(MySQLとかPostgreSQL)にファイル名用テーブルでも作っとけばいい感じはする。

243 名前:デフォルトの名無しさん mailto:sage [2012/09/19(水) 13:53:28.74 ]
>dbってlinuxコマンドのdb?

Berkeley DBのことか

244 名前:デフォルトの名無しさん mailto:sage [2012/09/19(水) 20:47:28.90 ]
複雑度によるけど、どっちでもいいんじゃない。ファイルシステムという単純なdbじゃ大変そうという話。

245 名前:デフォルトの名無しさん mailto:sage [2012/09/20(木) 01:32:09.66 ]
>235
ニホンゴムズカシイデスネ

246 名前:デフォルトの名無しさん mailto:sage [2012/09/21(金) 12:01:12.94 ]
>>245
英語でもPh-はF-と同じ発音だしKn-はしばしばKを発音しない。
読みで分類するからそういう問題に直面するわけで。
# じゃぁ読みで分類するのをやめようとなると、それはそれで別の問題があるけれど。

247 名前:デフォルトの名無しさん [2012/09/22(土) 23:39:02.10 ]
ちょっと質問、null文字を検索したら全部ヒットするんだっけ?

248 名前:デフォルトの名無しさん mailto:sage [2012/09/22(土) 23:56:11.73 ]
>>247の質問訂正
配列のデータすべてヒットさせるのは//ではなく/.*/の方がいいかな?

249 名前:デフォルトの名無しさん mailto:sage [2012/09/23(日) 00:03:06.22 ]
配列ってどの言語の配列よ?
>>4のテンプレに従って環境書こうぜ

250 名前:デフォルトの名無しさん mailto:sage [2012/09/23(日) 00:21:34.93 ]
>>249
ごめん、perlです



251 名前:デフォルトの名無しさん mailto:sage [2012/09/23(日) 00:27:38.76 ]
>>250捕捉
ActivePerl5.14.2で配列を検索で、全データをヒットさせたい場合は
空文字列を検索でも全データがヒットするけど、きちんと.*を指定したほうが
いいのかと思っての質問

単純にperl5の環境で空文字列を検索したら全データヒットと定義されてるのか疑問に思った

252 名前:デフォルトの名無しさん mailto:sage [2012/09/23(日) 23:49:39.15 ]
●正規表現の使用環境
Perl

●検索か置換か?
検索

●説明
文字列中の数字を配列の各要素に格納したい。以下のプログラムを作りました。
9がresultの先頭に入るのみなのです。このような場合splitを用いるのでしょうか?
$str = "TEST 0 1 2 3 4 5 6 7 8 9";
@result = $str =~ m/^TEST(?:\s(\d))+$/g;






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<135KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef