teratail header banner
teratail header banner
質問するログイン新規登録

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

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

新規登録して質問してみよう
ただいま回答率
85.30%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

1回答

1296閲覧

特定の要素内の文字列から数字だけに、<span>タグを挿入したい

yuuusuke

総合スコア6

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2021/09/20 03:57

0

0

概要

投稿をループで吐き出す仕様にて、文字の縦書きのCSSを当てていますが、
数字だけ横になってしまいます。
その部分に<span>タグなどを挿入して、text-combine-upright: all;を当てれば済むことなのですが、
投稿者が、タグの挿入もできないような状況ですので、普通に投稿したら、自動的に数字にだけ<span>タグが吐き出せるようにしたいのが趣旨です。

実現したいこと

hタグ内のテキストの数字部分にだけ<span>タグを挿入

例) 

html

1<h4 class="h4-txt">数字123にだけスパンタグを入れたいです</h4> 2 3<!-- jQueryで数字だけ取得、その数字にタグ挿入 --> 4 5<h4 class="h4-txt">数字<span>123</span>にだけスパンタグを入れたいです</h4> 6

### 試したこと

jQuery

1jQuery(function(){ 2 var elem = document.getElementById("works-h"); 3 var works_num = content_area.querySelector(".works--tit h4"); 4 var stnum = works_num.replace(/[^0-9]/g, ''); 5 elem.insertAdjacentHTML("<span>" + stnum + "</span>"); 6});

指定している部分など、見た感じできないとわかってますが、
なかなかうまくできません。
そもそもこのようなことができるのでしょうか。

教えて頂けると幸いです。

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

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

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

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

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

guest

回答1

0

そやの〜
質問の要点として

  • 与えられた文字列の中に含まれる連続する数字を、<span>タグで囲んだ文字列を得たい。

ということなのであれば、とりまこないな感じでできまっせ。

javascript

1const text = 'あいうえお123かきくけこ456さしすせそ567たちつてと'; 2 3const textWithDigitsSpans = text.replace(/[0-9]+/g, m => `<span>${m}</span>`); 4 5console.log(textWithDigitsSpans); // => "あいうえお<span>123</span>かきくけこ<span>456</span>さしすせそ<span>567</span>たちつてと" 6

投稿2021/09/20 04:13

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.30%

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

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

質問する

関連した質問