yucco

謎解きが趣味な、駆け出しと言い続けてぼちぼち4年ばかり経った多分エンジニアです。

yucco

謎解きが趣味な、駆け出しと言い続けてぼちぼち4年ばかり経った多分エンジニアです。

マガジン

  • JavaScriptにまつわるメモ

    JavaScript関連のTipsとか防備録とか

  • へっぽこ学習記録

  • コードのあんちょこ。

  • わたしがよく見るやつ

    全ての記事は未来の自分の為に書いているのですが、その中でも特に未来の私が良く読みに来るより抜き記事をまとめてあります。 そう、これもまた未来の私の為のまとめ。

  • Javaのお勉強をする

最近の記事

【JavaScript】半角ハテナ「?」をmatchで検索したいのにUncaught SyntaxError: Invalid regular expressionが出る

「この文章には半角ハテナが含まれているか?」をmatchで調べようとしたらUncaught SyntaxError: Invalid regular expressionで落ちた話。 結論こう。 const check_text = "この文章中に半角ハテナはあるか?"if(check_text.match('/\?/')){ console.log("あるよ");}else{ console.log("ないよ");} matchの引数として渡す比較用文字列を、正規

    • 【Java+Junit5】例外を期待するテストをする

      適切な例外が発生するかどうかをテストしたいときのやりかた。 assertThrowsを使って例外が発生することを確認するassertThrowsを使うことで、期待した例外が発生したかどうかを確認することが出来ます。 public class なんかのクラス_の_テスト{ @test public void 例外を期待するテスト(){ // Arrange Book テストデータ = null // わざとnullにしておく // Assert a

      • 8月も終わってしまうの日記

        うそだろ…………って顔をしています。つい一週間くらい前に7月が終わってしまうの日記を書いた気がするのに………… でも一方で8月は体感めちゃくちゃ長かったんです本当です。もう7月末の事が遠い昔のことのようです。 年に数回あるハンドメイドの大きなイベントへの出展があったり、新しい習い事を始めて見たり、続けてる方の習い事は発表会があって、趣味の方でもあれ行ってこれも行って、帰省もしてきてェ………………と、詰め込みすぎの8月を過ごしておりました。今スケジュール見返して嘘でしょって

        • 7月が終わってしまうの日記

          今月もまた、あんまり新しい知識に触れない……というか、社内の業務や今触ってるシステムの構成みたいなところを必死にひもとくみたいな仕事が続いたので、書き留めて置くような知識がですねモゴモゴ。全く一つも無かったわけではないんですけどこちらに書いている余裕もなくてモゴモゴ。 ただまた連続投稿記録が途切れてしまうのも癪でこうやって中身のない日記を書いています。 最近ちょっと、「自分の人生を取り戻しに行こ」って思って、色々新しいことや、長らく放って置いた、やりたいことに手を

        【JavaScript】半角ハテナ「?」をmatchで検索したいのにUncaught SyntaxError: Invalid regular expressionが出る

        マガジン

        • JavaScriptにまつわるメモ
          24本
        • コードのあんちょこ。
          127本
        • へっぽこ学習記録
          186本
        • わたしがよく見るやつ
          26本
        • Javaのお勉強をする
          35本
        • MySQLにまつわるメモ
          6本

        記事

          【MySQL】日付で絞り込む

          Date型のカラムを日付で絞り込みたいときはこう SELECT * FROM sample_table WHERE 登録日時 <= '2024-06-25 00:00:00' 普通に文字で、Date型のフォーマットに乗っ取った日時を渡してあげればそれでOK。 「このSQLを実行した日のその月」とか「その前月」とかやろうとするともうちょっと色々面倒ですが、とりあえず人力で日付指定出来る状況ならこれでOK。いつも忘れるのでメモ記事でした。

          【MySQL】日付で絞り込む

          コピー元と全く同じ状態になるようにバックアップを取るバッチを作る

          前回の記事 では、「コピー元からコピー先へ、コピー先より新しいフォルダ・ファイルをコピーする」というだけの処理を作りました。 ただ、これだと、元フォルダ内でリネームしたり消したりしたファイルも、そのまま蓄積していってしまいます。バックアップとしてはそういう挙動にしたい場合もあるので一概にダメではないのですが、コピー元とコピー先を常に全く同じ状態に保っといたほうが便利そうだな……と思ったので、そのようなバッチを作ります。 結論robocopy D:\ F:\backup

          コピー元と全く同じ状態になるようにバックアップを取るバッチを作る

          バッチ+タスクスケジューラを使って、内蔵HDDの中身を自動で外付けHDDにバックアップする

          パソコンが壊れました。 早々に新しいのを買ったのですが、その際、以前のPCに仕込んでいた自動バックアップバッチが灰燼に帰したので、もう一度仕込みながら、noteというクラウドにもバッチのバックアップを残しておこうと、そう言う記事です。 全て無料でご覧頂けますが、もし、突然PCが壊れてボーナスを吹っ飛ばした私を憐れんでくださる方がいらっしゃいましたら、有料部分を購入して頂けたら大変嬉しく存じます。どうでもいい余談が読めます。 とりあえず、わかる人向けの結論以下が、「Dドラ

          ¥100

          バッチ+タスクスケジューラを使って、内蔵HDDの中身を自動で外付けHDDにバックアップする

          ¥100

          2024年上半期のフライングふりかえり

          えっ2024年がもう半分終わるんですか?!の気持ちと、えっまだ2024年って半分なんですか?!の気持ちが半々くらいです、って書こうとしたらまだ全然半分まではあと一ヶ月あることに気付きました。やっぱり長いや2024年。 5月中一本も記事が無くて、連続投稿記録途切れちゃうのも勿体ないので、フライング振り返りでもしようかと思います。12月にもそんなことやってましたね。 今年に入ってからはnoteの記事のペースが落ち着き気味でした。 単に、noteに書き留めておいた方が有意義そう

          2024年上半期のフライングふりかえり

          【MySQL】自動採番されるID番号だけが登録されているテーブルにデータを追加する

          いっつもやり方分からなくなる INSERT INTO `スキーマ`.`テーブル名`() VALUES(); これで登録すれば、自動で採番された番号が入ります。 自動採番のIDと現在時刻のタイムスタンプ自動取得、みたいな複数カラムあるテーブルでもこれでOK。 複数項目あって、自動採番されない項目もあるテーブルなら、自動採番される項目だけ空にしてINSERTすれば良いんですけど、自動採番される項目しかないIDテーブルに追加するの、どうしたら良いかすぐに解らなくなるので。

          【MySQL】自動採番されるID番号だけが登録されているテーブルにデータを追加する

          【GAS】HTMLサービスを使ってクリックできるURLを表示したり、非同期処理問題をなんとかする

          やりたいこと①:スプレッドシートの「入力用」シートに入力した情報を、「出力用」シートに転記・整形して、出力用シートをPDFとして書き出すという処理をボタン一つでやりたい。 ②:①で書き出してドライブに保存したPDFのURLを画面上に表示し、クリックで表示できるようにしたい 問題点① 転記・整形する処理とPDF書き出し処理を別のfunctionとして記述すると(おそらく)処理スレッドが分かれてしまう関係で、転記した情報が反映されていないままの出力用シートが出力されてしまう

          【GAS】HTMLサービスを使ってクリックできるURLを表示したり、非同期処理問題をなんとかする

          【GAS】セルから取得したDate型の日付をStringにフォーマットする

          セルに入力した日付を取得すると、Date型になってしまっているので、必要に応じてフォーマットします。 結論function Date型をStringにフォーマット(値){ // Date型かどうかを確認 if(Object.prototype.toString.call(値) != "[object Date]"){ throw Error("引数はDate型で渡してください") } // フォーマットして返却 return Ut

          【GAS】セルから取得したDate型の日付をStringにフォーマットする

          【Python3+Firestore】PythonアプリからFirestoreにアクセスする2024

          以前の記事 を参考に新しいアプリを作ろうとしたら動かなかったので情報を更新していきますよっと。 今回は、既にFirestoreデータベースは作ってある前提でさくっとデータを取得しに行きます。とりあえずテスト用にデータベースを作ってみたい場合はGUIからやればすぐできる。 公式ドキュメントより始めよはい 言われた通りにやってみる管理用パッケージをインストール $ pip install --upgrade firebase-admin 推奨パッケージが変わっています

          【Python3+Firestore】PythonアプリからFirestoreにアクセスする2024

          【Java】StringからIntにしたりDateからStringにしたりStringをDateにしたり

          テスト用に、データベースに入れる情報を用意→データベースに登録→登録した情報を取り出して比較、というロジックを作ったら、入れる用のデータはJSONで受け取る前提だから全部Stringで渡さなきゃいけなくて、出してくるデータはテーブルカラム通りの型で出てくるもんだから困ったね、ということで全部変換していくよ! とりあえずざっくりキャストできればOK!細かいフォーマットの違いとか例外が発生する文字が入ってきたらとかスレッドセーフとかの面倒なことは考えないよ!! Stringから

          【Java】StringからIntにしたりDateからStringにしたりStringをDateにしたり

          【Java+MyBatis】データ登録系API作成時に、登録に成功したレコードの、自動採番で付与されるIDを返却する

          「このデータを登録しておくれ」「はいよ、登録したよ、レコード番号〇〇番として登録できたよ」というAPIを作る際、肝心の「レコード番号〇〇番として登録できたよ」をどうやって取得しようか。というお話。 レコード番号は通常自動採番に設定するじゃないですか。いちいち最新のレコード番号取得して+1してとかしないじゃないですか。あんまり。 でも、SQLでInsertする処理は登録処理をするだけで、「今まさに登録したこのレコードで自動採番された番号はこちらです」は返してくれないじゃないで

          【Java+MyBatis】データ登録系API作成時に、登録に成功したレコードの、自動採番で付与されるIDを返却する

          【GAS】APIを叩いてPOSTでJSONを送信したり、その通信をPostmanでエミュレートしてみたり

          GASからAPIのエンドポイントへアクセスして、POSTで情報送信出来るようにしたいの巻きです。 結論// データベース登録用会員データ.gs// sampleclass 会員データ{ constructor(名前, 電話番号, メールアドレス){ this.name = 名前; this.tel = 電話番号; this.mail = メールアドレス; } JSONとして取得(){ return stringify(this) }} //

          【GAS】APIを叩いてPOSTでJSONを送信したり、その通信をPostmanでエミュレートしてみたり

          【GAS】VLOOKUPみたいなことをfindを使って華麗にやる

          VLOOKUPがそのままGAS上でも使えれば何も問題ないんですが 結論function lookup(target_code){ // A列に商品名、B列に商品コードが入っているものとする const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const vals = sheet.getDataRange().getValues(); // シートの値を二次元配列化しておく //

          【GAS】VLOOKUPみたいなことをfindを使って華麗にやる