タイプセット中に入力ストリームで URL を効率的に検出する必要があります。
URL 検出器は、組版フローの一部になります。入力として一度に 1 文字を受け入れ、その文字が属する URL とともに一度に 1 文字を出力する必要があります。これを行うために、先読みのためにテキストをバッファできます。
たとえば、入力ストリームが の"Hello http://foo.com World"
場合、出力は次のようになります。
"H": ""
"e": ""
"l": ""
"l": ""
"o": ""
" ": ""
"h": "http://foo.com"
"t": "http://foo.com"
"t": "http://foo.com"
"p": "http://foo.com"
":": "http://foo.com"
"/": "http://foo.com"
"/": "http://foo.com"
"f": "http://foo.com"
"o": "http://foo.com"
"o": "http://foo.com"
".": "http://foo.com"
"c": "http://foo.com"
"o": "http://foo.com"
"m": "http://foo.com"
" ": ""
"W": ""
"o": ""
"r": ""
"l": ""
"d": ""
必要に応じて入力と出力をストリーミングするように Ragel を作成できますか?
ちなみに、(Java) ragel URL parser hereがあり、これを出発点として使用することを考えています。