質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

Q&A

3回答

335閲覧

\b+が認識sれない。。

RegEx-TS

総合スコア0

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

0グッド

0クリップ

投稿2020/09/14 02:05

前提・実現したいこと

文の中にある「+B」という文字列を発見したく、「\b+B\b」という正規表現を取り込んでみましたが、検出ができません。
どのような正規表現を使えばいいのでしょうか?
(「+B」だけを発見したく、「A+B」は対象から外したい。)

発生している問題・エラーメッセージ

何も検出されない

該当のソースコード

\b+B\b

試したこと

  1. 頭の「\b」を外す

「\b+」の組み合わせが良くないかと思い、「+B\b」にしてみると
動作はしますが、その場合「A+B」も検出されてしまうため困っています。

  1. 「<」「>」に変えてみる

「<+B>」に変更してみましたが、同様に検出がされません。。

補足情報(FW/ツールのバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2020/09/14 02:09

正規表現で\Bってなにを示してるとお思いでしょうか
yambejp

2020/09/14 02:24

具体的にどういう文字がOKでどういう文字がNGなのか例示ください またヒットさせればいいのか、ヒットしたい文字をほしいのかによります。 加えて正規表現を利用する言語も指示されたほうがよいでしょう
guest

回答3

0

\bの理解が間違っています。\bは「英数字(と_)と、それ以外との境目」にマッチします。

そのため、A+の境目にマッチします。

何にマッチさせて何にマッチさせたくないのか書かれてないので、一例ですが、
もし「英数字に続かない+B」であれば、否定後読みを使うのでしょうか。
(?<!\w)+B\b

投稿2020/09/14 02:26

otn

総合スコア84798

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RegEx-TS

2020/09/15 00:15

私からの情報が足りていない中、丁寧なご回答ありがとうございます。 教えていただいた正規表現で動作することが確認できました。 本当にありがとうございます。
guest

0

「+」(正規表現の量指定子でなくプラス記号の文字)は正規表現では単語を構成する文字とはなりません。
したがって、「\b」で「+B」を捉えることはできません。

regex

1(\W|^)(+B)\b

とやれば大方はいけると思います(二番目カッコは不要だと思いますが見やすさのためつけました)。

投稿2020/09/14 02:26

編集2020/09/14 02:36
satocha

総合スコア336

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RegEx-TS

2020/09/15 00:18

ご回答ありがとうございました。「+」と「\b」の知識が足りなかったようで、勉強になりました。 上記の正規表現での動作も確認ができました。本当にありがとうございます。
guest

0

ヒットさせるだけなら

RegExp

1/[^A]+B/

投稿2020/09/14 02:25

yambejp

総合スコア115010

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RegEx-TS

2020/09/15 00:19

ご回答ありがとうございます。頂いた回答も使えますね。勉強になります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問