
こちらの記事で書かれているようなことを
http://www.relief.jp/itnote/archives/001896.php
JavaScript側、もしくはJava側で行いたいのですが良い方法はないでしょうか?
「年」と「月」と「日」を取り出したいと思っています。
今ちなみに下記のような感じで一応実現はしているのですが…。
正規表現をあまり使った事がなかったもので(久々なので)、使い方が正しいかも気になっております。
<▼サンプルソース1:直接value値を渡す場合>
<html>
<script type="text/javascript">
function replaceTest(str){
var hoge1 = str.replace(/[年]|[月]|[日]/g, "");
alert(戻り値として、年月日を変換した値を返します。);
return hoge1;
}
</script>
<body>
<form name="replaceForm">
<input type="text" onblur="replaceTest(this.value)" name="replaceText" value="2000年10月08日">
<▼サンプルソース2:オブジェクトを引数として、メソッドを跨いで結果を返す場合>
<html>
<script type="text/javascript">
function replaceTest(str){
var hoge1 = str.replace(/[年]|[月]|[日]/g, "");
return hoge1;
}
function replaceStart(obj){
var str1 = obj.value;
var str2 = replaceTest(str1);
alert("年月日が変換された値:" + str2);
}
</script>
<body>
<form name="ZeroForm">
<input type="text" onblur="replaceStart(this)" name="zeroText" value="2000年10月08日">
</form>
</body>
</html>
①「/g」の意味は、検索対象の文字列を全て置換するという意味でいいでしょうか?
②最終的に共通関数化しないといけないのですが、今の方法でも問題ないでしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
命題の通りであれば、こんな感じですが
月や日は必ずしも左を0で埋めた二桁であるとは限りませんが
運用でカバーしていますか?
<script>
var str="2015年05月25日";
str=str.replace(/(\d{4})年(\d{2})月(\d{2})日/,"$1$2$3");
document.write(str);
</script>
例えば上記「05月」が「5(一桁数字)月」や「(半角スペース)5月」にならないという
担保があるのか・・・によって処理が若干かわります
No.1
- 回答日時:
まず正規表現の問題点について。
> /[年]|[月]|[日]/g
は
/[年月日]/g
で十分です。元のままでは[]を使う意味がありません。
① 「対象の文字列の内で一致する箇所すべて」という意味ですね。これ自体には「置換する」という意味はありません。
②「共通関数化」というのがどういう意味なのかこのコードだけからは読み取れないのですが、入ってくる文字列が正確にyyyy年mm月dd日という形式であるという絶対の保証があって、かつ、年・月・日の値を知る必要が一切ないというのであれば、特に問題はないでしょう。
自分だったらそんな保障は信じられないし、年・月・日の値が不要だというのは信じられないので、
/^(\d{4})年(\d{2})月(\d{2})日$/
を match させてその結果から年・月・日の値を取り出しますが。
https://developer.mozilla.org/ja/docs/Web/JavaSc …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA初心者です。 2 2022/10/10 11:52
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jsで質問です。 ボタンが二つ存...
-
jQueryで同じクラス名のものを...
-
画像の表示位置
-
switch文のswitch(n)の部分を複...
-
Colorboxがうまく設置できません
-
フォームが空欄の時にフォーム...
-
セレクトを全て選択されていな...
-
sessionStorageを調べています。
-
スマホ上で、左右スワイプで次...
-
セレクトボックスを2つ設けて選...
-
GoogleChart 階層ごとのブロッ...
-
タグを教えてください。
-
ラジオボタンを複数選択したと...
-
jsで質問です。 formをsubmitし...
-
2025年相性がいい人のサイトの...
-
CookieをWebStoeageに変える
-
Adobe acrobat proでフォームを...
-
Outlookのアカウントがあるとメ...
-
jqueryのselect2で検索欄の文字...
-
<tr>指定した表の行要素をボ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
タグを教えてください。
-
jqueryのselect2で検索欄の文字...
-
jsonテキストデータの並び替え...
-
初心者です。gulpでコンパイル...
-
ラジオボタンを複数選択したと...
-
階層別の組織図の自動作成について
-
jQueryで同じクラス名のものを...
-
二次元配列を使って順位をだす...
-
読み込んだQRコードをフォーム...
-
画面遷移を行わずに同一ページ...
-
セレクトを全て選択されていな...
-
【Google Apps Script】「ライ...
-
Adobe acrobat proでフォームを...
-
二次元配列の全要素の全要素を...
-
【GAS】WEBアプリでハイパーリ...
-
GASでGoogleフォームの自動返信...
-
フォームが空欄の時にフォーム...
-
セレクトボックスで配列を呼び...
-
イラストレーター、縦中横のシ...
おすすめ情報
JavaScriptを書いたのですが、これでは読めませんね。
すみません。汗