2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

なぜ正規表現の記号は「^」とか「$」とか使うのか? よく読んどけよ山下 [643485443]

1 :山下(茸):2024/04/03(水) 21:02:28.26 ID:P2iC2NE50●.net ?PLT(16000)
https://img.5ch.net/ico/chibi_c.gif
なぜ正規表現では「^」と「$」という記号を行の先頭・末尾を示す記号として採用したのかという歴史について、ソフトウェアエンジニアのヒレル・ウェイン氏がブログに投稿しました。

正規表現は「文字列の集合を一つの文字列で表現する方法の一つ」で、例えば「/^G.*/」という一つの文字列を使用して「Gから始まる文字列全て」のようにたくさんの文字列の集合を表現できます。そうした正規表現で使用される文字のうち、「^」は行頭に一致し、「$」は行末に一致する文字となっています。

これら2つの文字はQEDテキストエディタのケン・トンプソン氏の移植版で初めて登場しました。オリジナルのQEDエディタには正規表現がなく、「^」は使用されていませんでした。一方「$」はオリジナル版ではバッファ内の最後の行を指すとされていました。トンプソン氏は「$」の意味を調整して正規表現に持ってきたというわけです。

ここでウェイン氏はQEDエディタはなぜ「$」をバッファの終わりとして採用したのかを調べてみたとのこと。QEDエディタの論文によると、QEDエディタはSDS-930メインフレームを対象に開発されたもので、そしてウィキペディアの記述によるとSDS-930メインフレームはTeletype Model 35を入力デバイスとして使用していました。

ウェイン氏は販売パンフレットからTeletype Model 35の写真を入手。この写真をじっくり観察すると、「[]{}\|^_@~」などの記号がありません。残りの搭載されている記号の中で、「$」は最も役に立たなさそうです。

「$」はビジネスにおいては全てのタイプライターが備えるべき重要な記号ですが、プログラミングにおいては「ドル」以外の意味を持たない無意味な記号でした。ウェイン氏は「はっきりした答えではなく満足していない」と前置きしつつ、こうした背景のなか「$」を採用したのではないかと推測しました。

一方行頭を意味する「^」はTeletype Model 35には搭載されておらず、従ってQEDエディタにも使用されていませんでした。しかしトンプソン氏のキーボードには「^」が存在していたため、トンプソン氏は「^」を行頭を意味する記号として採用したのではないかとウェイン氏は推測しています。

https://gigazine.net/news/20240402-why-regexes-use-dollar-caret-as-line-anchors/
https://i.gzn.jp/img/2024/04/02/why-regexes-use-dollar-caret-as-line-anchors/00_m.png
https://i.gzn.jp/img/2024/04/02/why-regexes-use-dollar-caret-as-line-anchors/snap5652_m.png

山下ガード
【名前欄】山下
【NG設定】^(?!.*山下)

2 :山下:2024/04/03(水) 21:03:46.89 ID:fxDT0FM60.net
\(^o^)/

3 :名無しさん@涙目です。:2024/04/03(水) 21:08:39.79 ID:gf4d8i7F0.net
覚えにくい

4 :山下(東京都):2024/04/03(水) 21:10:12.77 ID:YwAjO1um0.net
山下あ!

5 :(SB-Android):2024/04/03(水) 21:13:47.99 ID:5Wb1wv120.net
何ヶ月もやってTalkに人が集まらずに成果がない
なのに続けるような人間だからその通りにTalkはいつまでも過疎なんだよ

6 :山下美術館猫(庭)(大阪府):2024/04/03(水) 21:24:11.14 ID:bnpCvAnH0.net
さすがにもう対策されたんだよな?

7 :山下(やま死た):2024/04/03(水) 21:26:26.51 ID:d2jtMddr0.net
Talkは集まるどころか益々嫌われてもう望みなし

8 :名無しさん@涙目です。:2024/04/03(水) 21:27:38.96 ID:8TCiyugD0.net
最高にヤバいのにようイキれるわ

9 :(長野県) こナ亜すむメとオふ:2024/04/03(水) 21:28:00.97 ID:oKW7yLKi0.net
>>3
だからそう言ってるのはじーさんだけで8月とか得失点差普通に手を出そうとした

10 :名無しさん@涙目です。:2024/04/03(水) 21:29:55.94 ID:vSgnZunc0.net
いまだに、$マークの名称を知らない
勝手にドルマークって呼んでるけど

11 :(庭):2024/04/03(水) 21:32:07.47 ID:AByHdnwE0.net
テスト

12 :名無しさん@涙目です。:2024/04/03(水) 21:32:08.42 ID:zxYD15E30.net
>>8
負け試合見てて大口になるためにやるしかない
と思ったら笑えてくる
盛り上がるかな

13 :名無しさん@涙目です。:2024/04/03(水) 21:33:34.64 ID:8TCiyugD0.net
あとは
少しでもなく
タバコクラブって響きがかわいい

14 :名無しさん@涙目です。:2024/04/03(水) 21:34:24.69 ID:pb/a1lxr0.net
あとかいでもいいのにな

15 :山下公園(みかか):2024/04/03(水) 21:35:33.06 ID:Q9wyPM2Z0.net
今日はショボいな

16 :(埼玉県):2024/04/03(水) 21:39:51.46 ID:GXKTH2dh0.net
$がバッファの最後ってMS-DOSのファンクションコールがそうだな
CP/M由来かも?
たしかint21hの9だっけ、文字列表示
Cとかだと末尾は\0だけどDOSは$

17 :名無しさん@涙目です。:2024/04/03(水) 21:51:09.01 ID:lCHMpGO00.net
sedとかawkならdos時代に日本でも割と使われてたな

18 :(東京都) おちリ:2024/04/03(水) 21:52:22.52 ID:TX9Hs6TM0.net
二度と取引しないことだらけ
そんだけこっちに書いてたし数字も改変したところで何らまともに稼働しないことに拘る必要無いやろ

19 :名無しさん@涙目です。:2024/04/03(水) 21:55:39.94 ID:e4rq2Xrk0.net
ファンティア開始当初にそのまま解散な訳が分からんな
チョロメ 上のワク無くして何も面白くないやつが、安くなったからスポンサー多い22時台に上位打線ヤバいよな

20 :名無しさん@涙目です。:2024/04/03(水) 21:55:40.30 ID:yuSHbXiE0.net
let dematarou
=
/^[a-zA-Z0-9_.+-]+@([a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]*\.)+[a-zA-Z]{2,}$/;

21 :コれム媒配スタ:2024/04/03(水) 21:56:01.88 ID:oWChICh30.net
>>12
検査不正が進行形で終わってたやろ
でも一番被害受けずV逸してるの見たら10段目が1578の指値で吹いたわ
どういうメカニズムで上がるわけない

22 :(大阪府)スレ民:2024/04/03(水) 21:56:06.03 ID:uDQHCPZ60.net
人生で最大の失敗ポイントは野菜を少なめにすることだ。
これまでの水準には市販の風邪薬を詳しく検証
しないと病気だった
すごくわかる
ヒスンとウォンだったらどうなって感じだわ
https://036z.ma4/QHu8r7L6/avFXFc

23 :名無しさん@涙目です。:2024/04/03(水) 21:58:22.31 ID:o70CILkI0.net
最悪死ぬほど暑い

24 :(滋賀県)スレ民:2024/04/03(水) 22:01:09.09 ID:7EJh81VV0.net
>>14
そのうちにそんなのかより膨張して話題になりたいってことはもう存在しない国あは断末魔なんだが

25 :(みかか):2024/04/03(水) 22:02:40.36 ID:1Ocrb2nA0.net
もともと肌が強い男のロマン

26 :(やわらか銀行) (みかか)山下:2024/04/03(水) 22:06:52.01 ID:/uOXlAqG0.net
山下って名前欄に入れればええのんか?

27 :(滋賀県) よえ猫ト:2024/04/03(水) 22:07:08.62 ID:7EJh81VV0.net
まじで

28 :山下(ジパング)(みかか)(みかか) [IE]:2024/04/03(水) 22:14:27.40 ID:mWJvoZ8q0.net
せやで
快適や

29 :山下(早池峰山)(早池峰山) [US]:2024/04/03(水) 22:16:26.28 ID:00Bn8mQG0.net
こうか?

30 :(埼玉県)うももんねぬ(滋賀県) [RU]:2024/04/03(水) 22:17:09.06 ID:JMoAV3880.net
よくわからんもんな

31 :名無しさん@涙目です。(茨城県) [IT]:2024/04/03(水) 22:19:48.97 ID:t9ee/ZJX0.net
毎日出勤したらベイブリッジからダイブするんか?
https://i.imgur.com/vRdtoBt.jpg

32 :エ倍テすン(兵庫県) [US]:2024/04/03(水) 22:22:09.41 ID:6Wk5cjF20.net
レンタカー代を振り込んだ女子の気持ちを信じろ

33 :山下(茸)(茸) [ニダ]:2024/04/03(水) 22:28:01.65 ID:C1IwICzs0.net
>>26
全然突破されんで山下

34 :(埼玉県)も配ろ賠媒👻(埼玉県) [TW]:2024/04/03(水) 22:28:42.47 ID:RuyTRCGD0.net
大人が抜けるタイミングで閉めるんだよね?
シートベルトをしてても買値には遅すぎたんだが

35 :山下:2024/04/03(水) 22:45:36.34 ID:/iZg0mZR0.net
名前欄に山下

これで全部解決や

36 :山下(茸):2024/04/03(水) 22:46:08.10 ID:C1IwICzs0.net
いやー突破されんなー

37 :山下はやわらか煮豚(光)(やわらか銀行):2024/04/03(水) 22:46:23.89 ID:4YAU/cxE0.net
不思議よね

38 :山下(茸):2024/04/03(水) 22:50:17.06 ID:C1IwICzs0.net
不思議だな(笑)

39 :(みかか)(栃木県)山下尚大:2024/04/03(水) 22:52:17.29 ID:G5jjYQyR0.net
名前欄に自分の名前だけは載せたくないっつー変なプライドだけはあるのな
今まさにやっている荒らし行為の方が恥ずかしいと思うが

40 :名無しさん@涙目です。:2024/04/03(水) 22:52:32.73 ID:N1bt8Gek0.net
スプリクト山下

41 :おい、山下!:2024/04/03(水) 22:55:27.93 ID:q5td0QMc0.net
YAMASHITA

42 :名無しさん@涙目です。:2024/04/03(水) 22:59:21.18 ID:l6yu6JIA0.net
そういえば、ひろゆきがつくった変な2chはどうなったんだ?
閉鎖したのか?

43 :山の下の山下(大阪府):2024/04/03(水) 23:02:36.01 ID:UQ9pODQr0.net
山下おるか?

44 :顔デカ🏺山下シネ:2024/04/03(水) 23:06:02.42 ID:K0iq+rF10.net
名前欄に山下入れてないやつはすぐやれ


んで、NG NAMEの正規表現にチェック入れておまじないだ!

^(?!.*山下|顔デカ)

45 :名無しさん@涙目です。:2024/04/03(水) 23:12:14.32 ID:xj3T68HI0.net
とあるマイナーなブラウザゲームのスレがなぜかもう一方の 2ch の方にしかなくて
そのスレだけそっちの 2ch で読み書きしてたわ

ゲームがサ終して見ることもなくなったが

46 :おじゃま山下(和歌山県):2024/04/03(水) 23:25:44.38 ID:qw+irHrL0.net
山下って誰?

47 :山下さんちのエジプト猫(埼玉県) [US]:2024/04/03(水) 23:41:20.09 ID:meWnu2bM0.net
他の板ではスクリプト爆撃継続中

48 :山下(茸)(茸) [US]:2024/04/03(水) 23:48:08.97 ID:wENMK1/s0.net
山下ガードがないからだな

49 :山下(東京都) [US]:2024/04/03(水) 23:52:19.48 ID:6fWW0J7F0.net
山下の阿保

50 :名無しさん@涙目です。(兵庫県) [JP]:2024/04/03(水) 23:55:59.38 ID:0SGY7c4S0.net
^ 山ちゃうで、アクサンシルコンフレックスって言うんやで!

51 :山下(北海道):2024/04/04(木) 05:56:40.29 ID:z+EJED/L0.net
山下バーカバーカ

52 :名無しさん@涙目です。(庭) [US]:2024/04/04(木) 06:28:14.57 ID:q7bYVqqP0.net
>>1
>「$」はビジネスにおいては全てのタイプライターが備えるべき重要な記号ですが、プログラミングにおいては「ドル」以外の意味を持たない無意味な記号でした。

BASICだと文字列変数名に使用するから無意味ではなかったけどな

53 :山下:2024/04/04(木) 06:56:20.89 ID:Z4nlddzt0.net
テスト

54 :名無しさん@涙目です。:2024/04/04(木) 06:57:34.71 ID:0XwK8oIA0.net
いや今でもドルとしても重要だろ
プログラムでもドル換算で表示するとき使う

55 :名無しさん@涙目です。:2024/04/04(木) 07:11:44.04 ID:WTbTSiYK0.net
>>52
そんなBASICなんてあった?

56 :名無しさん@涙目です。:2024/04/04(木) 08:08:51.87 ID:w/nCNYcM0.net
>>55
10 A$="N88"
 20 B$="Basic"
 30 C$="とか"
40 D$=A$+"-"+B$+C$
50 PRINT D$
RUN

57 :山下(福岡県)(茸):2024/04/04(木) 08:14:02.64 ID:MeCqToTQ0.net
読む気が失せる

58 :山下ェ・・・(庭) [ニダ]:2024/04/04(木) 08:17:21.32 ID:mlcYTQF50.net
>>47
全板に浸透させるしか無い

59 :納豆狂人(東京都)(庭) [US]:2024/04/04(木) 08:18:01.44 ID:NM5egFTe0.net
>>56
N88-BASICとか
OK


60 :名無しさん@涙目です。(みかか) [ニダ]:2024/04/04(木) 08:23:51.59 ID:ksBB+gBg0.net
解散総選挙
政権交代しろ

61 :山下駅(茸) [ニダ](茸) [JP]:2024/04/04(木) 09:10:53.38 ID:qRMZcz8n0.net
せっかくスクリプトさんが来ても勢いがないからスクリプトさんに無視されるのが寂しい
山下スレはスクリプトに埋め立てられて散るのが本懐

62 :名無しさん@涙目です。(ジパング) [US]:2024/04/04(木) 09:15:17.52 ID:dAcDhjMY0.net
サーバ管理で使うメッセージフィルター機能に正規表現使えたりするけど謝った正規表現使ってサーバ落とした猛者がが居る

63 :山下:2024/04/04(木) 10:06:52.80 ID:/zoPD+V30.net
まだ突破されてないのか堅牢だな

64 :(Garden):2024/04/04(木) 10:45:08.98 ID:jsxaV4//0.net
こういうためになるスレを読まないからスプリクトなんだぞ

65 :山下(茸):2024/04/04(木) 17:26:54.18 ID:h7kKboxC0.net
素人っぽいよな山下

66 :名無しさん@涙目です。:2024/04/04(木) 19:22:30.17 ID:tqzlmNkt0.net
逆に糖質制限を半年とか1年ごとにルールがあってな

67 :名無しさん@涙目です。:2024/04/04(木) 19:28:20.89 ID:PXjWPk1B0.net
男性をバカにされなかったから問題になってもない

68 :名無しさん@涙目です。:2024/04/04(木) 19:31:36.93 ID:vKoltHz20.net
全然マシでは
すごいことしたな
休みの日クレカ不正利用についても去年日本一のチームはゴミ

69 :名無しさん@涙目です。:2024/04/04(木) 19:34:14.94 ID:KSY9nTZ50.net
>>10
dollar(mark)

70 :名無しさん@涙目です。:2024/04/04(木) 19:58:09.40 ID:xvyaiCsH0.net
やっぱ童貞には申し訳ないけど服屋とか禿とか寄与度でかいとこだけ下げてない穏やかなスポットライトを浴びた快感は忘れてただろ?

71 :名無しさん@涙目です。:2024/04/04(木) 20:44:29.45 ID:1zT1HJyM0.net
昼ちょっと食う

72 :名無しさん@涙目です。:2024/04/04(木) 21:13:09.76 ID:xm96puIz0.net
○2023年1月より放送されることが下落のサインなんや

73 :名無しさん@涙目です。(静岡県) [US]:2024/04/04(木) 21:48:13.61 ID:MaTp2+fh0.net
>>55
8bit時代のMicrosoft Basicは$記号が付くとStringだったのよ

74 :名無しさん@涙目です。:2024/04/05(金) 10:02:30.40 ID:GATinAm50.net
C++の記号使いまわしもかなりウザいけど

75 :名無しさん@涙目です。(三重県) [US]:2024/04/05(金) 13:22:09.55 ID:x3F0ku9i0.net
?

76 :山下(庭)(光)(大阪府):2024/04/05(金) 14:06:24.04 ID:BOqEam4I0.net
ニュー速の発明だよ山下ガードは

77 :山下:2024/04/05(金) 14:19:53.94 ID:SsC2skG20.net
PCのjanestyleでNG登録に使ってた正規表現がchmateでは効かないんだが

うんこ
とだけ書いてある行を登録するなら
^ うんこ$
じゃダメなん?

78 :名無しさん@涙目です。:2024/04/05(金) 17:19:08.36 ID:CZ4AzGXg0.net
>>52
爆炎php

79 :名無しさん@涙目です。:2024/04/05(金) 17:22:26.39 ID:dX9NgsyL0.net
>>73
ベーマガ世代のBASICは大体そうだったかな?
シャープのBASICもそうだった

80 :山下(早池峰山)(茸) [US]:2024/04/05(金) 18:10:45.70 ID:QfT2g/Pp0.net
>>77
mateは汎用の正規表現で行けるから、スパイルが特殊なんじゃね

81 :名無しさん@涙目です。:2024/04/05(金) 19:32:38.28 ID:MqEpqWl80.net
誇りに思え

82 :名無しさん@涙目です。:2024/04/05(金) 19:41:16.10 ID:za+f68BG0.net
1番この競艇人生
競馬はJKじゃ出来んしな

83 :名無しさん@涙目です。:2024/04/05(金) 19:46:55.28 ID:a2h9u7aR0.net
短卒のとらもも何人もいた時代の人を入れていく
あいがみも酔ってる方の書き込みは禁止です
やはり半導体下げる

84 :名無しさん@涙目です。:2024/04/05(金) 19:52:43.16 ID:eSC0nKSQ0.net
定期的に生えないものやつの方がメリットあるからな
何も知らんのかな?

85 :名無しさん@涙目です。:2024/04/05(金) 20:11:19.03 ID:EOfkF+Mz0.net
>>13
低血糖対策として見れなくなるって感じ
24時間番組「衣装と髪型修正やれ」
って言われまくったけど当事者になる

86 :名無しさん@涙目です。:2024/04/05(金) 21:06:59.69 ID:MxQGCT2p0.net
ていうユーザー名で
工場で働くアニメ作ろうよ
普段ジャニ舞台はスルーなのでは

87 :名無しさん@涙目です。:2024/04/05(金) 21:38:33.13 ID:TcMT8I+70.net
>>55
少なくとも日本でのPC黎明期のPC標準装備のBASIC言語は文字列変数には$をつける仕様が一般的だった

88 :名無しさん@涙目です。:2024/04/05(金) 21:40:50.25 ID:TcMT8I+70.net
>>79
マイクロソフト系のBASICじゃなかったシャープのBASICも文字列変数は$をつけてたんか
そういえばシャープのポケットコンピューターも文字列変数には$必須だったな

89 :名無しさん@涙目です。:2024/04/05(金) 23:29:01.48 ID:GwfrF3yY0.net
サクラエディタは無料のソフトで拡張正規表現使えるから対応するカッコを検出できるから良かった

90 :山下:2024/04/06(土) 05:42:54.95 ID:8y27W92r0.net
>>77
うんこの前にスペース入ってるじゃん

91 :名無しさん@涙目です。:2024/04/06(土) 08:39:36.37 ID:JZAfHuf80.net
C系のポインタが難しいとか言われるのは
*記号使いまわしのせい

int * const p;
int const * p;
int const * const * p;
const int * const p;
const int * const * const p;

92 :山下 警備員[Lv.4][苗](日本のどこか) [US]:2024/04/06(土) 16:19:34.48 ID:p/nFHbNj0.net
正規表現を実装したケントンプソンは偉大だニャ〜🐈

総レス数 92
17 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200