Loading

Japanese Language & Usage Q & A site

If you are learning Japanese Language and have some questions to ask about it, you could ask it on

Japanese Language & Usage site at Stack Exchange

Python の新しい正規表現ライブラリ

Python の新しい正規表現ライブラリがすごい

  • Perl6と.NETにしかできない(俺知っている限り)グループのなかのサブグループのデータが取れる
  • >>> m = regex.search(r"(\w{3})+", "123456789")
    
    >>> m.captures(1)
    ['123', '456', '789']
    >>> m.starts(1)
    [0, 3, 6]
    >>> m.ends(1)
    [3, 6, 9]
    >>> m.spans(1)
    [(0, 3), (3, 6), (6, 9)]
  • 長さ一定でないLookBehindができる。
  • .finditer と同様に .splititer ができる。
  • Posix character classが追加された。
  • [[:alpha:]], [[:^alpha:]]
  • マッチしたグループの名前でとれる。たぶんnamed tuple使っていると思う。
  • >>> m = regex.search(r"(?P.*?)(?P\d+)(?P.*)", "pqr123stu")
    >>> print m["before"]
    pqr
    >>> print m["num"]
    123
    >>> print m["after"]
    stu
    >>> print len(m)
    4
    >>> print m[:]
    ('pqr123stu', 'pqr', '123', 'stu')
  • \N{name} という表現ができる
  • Unicode関係の\P{name} という表現ができる。Unicode 6.0まで対応しているみたい
  • 逆方向で検索することができる
  • >>> regex.findall(r"..", "abcde")
    ['ab', 'cd']
    >>> regex.findall(r"(?r)..", "abcde")
    ['de', 'bc']
  • それ以外にもいろんな機能が追加されたそうです....

スピードも1割ぐらいは早くなったと思う。re2に勝てないけどね。

ただこういうKiller Featuresあるかぎりみんな使い続けるでしょう 。。。

詳しくは http://pypi.python.org/pypi/regex で

Firefox 6 alpha

Firefox 6 alpha




Edit: Firefox Nightly is already version 8, three months later at July.

Learn Everything!!!

"Jack of all trades, master of none, though often better than a master of one."

Learn everything, and be Generalist, which is a speciality.

ref: http://programmers.stackexchange.com/questions/44177/what-is-the-single-most-effective-thing-you-did-to-improve-your-programming-skill

Yeah, Learn all language including Golfscript, J, Befunge, Brainf**k, ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... .....

Codegolf & Golfscript の勉強その1

Factorial (by Nabb) - 9 chars


~,1\{)*}/

$ echo -n 1 | golfscript factorial.gs 
1

$ echo -n 4 | golfscript factorial.gs 
24

$ echo -n 6 | golfscript factorial.gs 
720

$ echo -n 10 | golfscript factorial.gs 
3628800

palindrome checker - 11 chars (by Nabb)


~2base.-1%=

$ echo 1 | golfscript codegolf-711-718.gs 
1

$ echo 2 | golfscript codegolf-711-718.gs 
0

$ echo 3 | golfscript codegolf-711-718.gs 
1

$ echo 4 | golfscript codegolf-711-718.gs 
0

$ echo 5 | golfscript codegolf-711-718.gs 
1

$ echo 6 | golfscript codegolf-711-718.gs 
0

completing the symmetrical quarter - 44 chars (mine)


n%{.-1%'/'/{'\\'/'/'*}%'\\'*+}%.-1%{-1%}%+n*

$ cat in
+---
|./.
|/..

$ cat in | golfscript codegolf-761.gs
+------+
|./..\.|
|/....\|
|\..../|
|.\../.|
+------+

# If you interest making your code golfed or want to golf, come and join our new http://codegolf.stackexchange.com

Love songs - Ayumi Hamasaki

01. Love song
02. crossroad
03. MOON
04. sending mail
05. Last angel
06. insomnia
07. Like a doll
08. Aria
09. blossom
10. Thank U
11. Sweet Season
12. overture
13. do it again
14. November
15. Virgin Road
16. SEVEN DAYS WAR. Live version

Album Cover




USB




USB, Micro SD & DVD



フォトブックのなかのあるページ。



四字熟語の読み方の分かち書き

たとえ、青天白日の読み方
”せいてんはくじつ” より 
”せい てん はく じつ” の方が俺には分かりやすいのである。


基本的には、漢字の音読みと訓読みをリストにして
  • あい
  • あいだ
  • あう
  • あお
  • あおい
  • あおぐ
  • あか
  • あかい
  • あかす
  • あかつき
  • あからむ
  • あからめる
  • あかり
  • あかるい
  • あかるむ
  • あがる
  • あき
  • あきなう
  • 。。。。。。

読み方を最初の文字から比べて見るのです。そこで ”せい” と言うのを見つかると ”せい” のあとにスペース一個入れればいいのです。

ただ、2000文字中100文字ぐらいは例外があって、
たとえ、”意気阻喪” の読み方 ”いきそそう” はいろいろんはパターンがあるのです。
  • ”いき” ”そ”  ”そう”
  • ”い” ”き” ”そ”  ”そう”
  • ”い” ”きそ”  ”そう”
  • ”い” ”きそ”  ”そ” ”う”
  • ”い” ”き” ”そ”  ”そう”
なので、一覧の文字と合わせてみるのはかなり難しいのである。

Mecabとかいろいろ試してみたんだけど、なかなか思い通りには分かち書きできません。

やっぱり四字熟語専門じゃないとできないかもしれませんねぇ。

なので、今のところルールに当てはまらないものは特別として手で分かち書きしています。

こんな感じで、
  • ようちゅうのこうこう よう ちゅう の こう こう
  • くがみらくずめ く がみ らく ずめ
  • そろうえん そ ろ う えん
  • ほんけほんもと ほん け ほん もと
  • ろうにゃくなんにょ ろう にゃく なん にょ
  • れいていこく れい てい こ く
  • こうせいかい こう せい か い
  • はなもとじあん はな もと じ あん
  • ひとりでんか ひとり でん か
  • おうばんぶるまい おう ばん ぶる まい
  • ひとみごくう ひと み ご くう
  • つづらおり つづら おり
  • きくじゅんじょう き く じゅん じょう
  • じきしょうそう じ き しょう そう
  • つくもがみ つくも がみ
  • こはるびより こ はる び より
  • つつうらうら つ つ うら うら
  • ひきこもごも ひ き こも ごも
  • くすりくそうばい くすり く そう ばい
  • さこうべん さ こ う べん
  • みつうんふう みつ うん ふ う
  • 。。。。。

言語ってどれでも、なかなか面白いものがあるだねぇ。





グーグルの日本語入力




日本語の文法と日付変換などがカッコイイ!これ使えるかも。。。

今日とか明日と打つと日付が出てきたりちょっと便利かもねぇ。

只今試し中。。。



追記

  • やぱっり、オープンソースだったよね。
  • http://code.google.com/p/mozc/
  • mozc はなんと読むかなぁ、多分 “文字” でしょうか
追記2

  • mozc の正しい読み方は “もずく” だそうです。

Skia - Google Chrome & Andriod 's Graphic Rendering Engine

なぜChromeでComplex Scriptであるミャンマー語の文字をLinuxでちゃんと読めないのかを気になって調べて見ました。

原因はクロームのグラフィックライブラリーSkiaにある様です。

これは、Skiaのホームページに書いてあったものです。



These core (missing) features are already planned for, but much of the work remains to be done.
  • ICU Layout integration for complex-script support when drawing text

それでも、気が済まなかったのでソースを取得してコンパイルしてみました。

ただ既存のMakefileだとサンプルとかちゃんとコンパイルされてなかったので、いろいろ参考させていただきました。

コンパイル時参考したリンク集
http://code.google.com/p/skia/
http://d.hatena.ne.jp/sharow/20100714/1279123813
http://www.atoker.com/blog/2008/09/06/skia-graphics-library-in-chrome-first-impressions/
http://stefano.italians.nl/archives/66
http://adamac.blogspot.com/2008/09/chrome-goodies-scons-buildbot-and-skia.html
https://groups.google.com/forum/#!forum/skia-discuss
http://whtconstruct.blogspot.com/2009/10/exploring-skia.html

結果はこんな感じ。。。




結局、Complex Script の文字は表示できなかったけどねぇ。。。
コード見ても、フォント関係はすべて空に近いぐらい乏しい感じだったのです。

もともとモバイルのAndriodで使うものをChromeにもって来たからそこまで対応していないのは当たり前か。しょうがないなぁ。。。




က်ေနာ္ဖတ္ေသာ အျခား ဘေလာ့ / ဆိုဒ္မ်ား