エクセルシート名には、命名規則がありまして、 Excel2003で空文字のシート名をつけようとするとダイアログが表示されて、 文字列長の制約と、下記禁則文字の仕様が表示される。 ・入力した名前に次の文字が含まれていないことを確認します: コロン(:)、円記号()、スラッシュ(/)、疑問符(?)、アスタリスク(*)、左角かっこ([)、右角かっこ(]) ネット上の公式な情報は下記URLくらいの様子? [XL2003]シート名に関する仕様および制限について https://support.microsoft.com/ja-jp/kb/436482 禁則文字の全角文字もだめなんだそうだ。 以下、禁則文字を正規表現で削除するコードについて数種言語の実装をメモしておく。 ※文字列長についてのチェックはしないです ※あと、ブック内で一意になるチェックとかも実際には要ると思う とりあえず正規表現
![エクセルシート名の禁則文字を削除する - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/b2f5fa7bcd09c1c0e972c755297d91b068f6bee1/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgyJUE4JUUzJTgyJUFGJUUzJTgyJUJCJUUzJTgzJUFCJUUzJTgyJUI3JUUzJTgzJUJDJUUzJTgzJTg4JUU1JTkwJThEJUUzJTgxJUFFJUU3JUE2JTgxJUU1JTg5JTg3JUU2JTk2JTg3JUU1JUFEJTk3JUUzJTgyJTkyJUU1JTg5JThBJUU5JTk5JUE0JUUzJTgxJTk5JUUzJTgyJThCJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz03Mjk0NzMxMGVhZWRlNmIzYzBkMzk2OWUyOTdiM2Q3NQ%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBtYXNhLWt1bmlrYXRhJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz00ODQ5NTk1NjYyYjMwMTQyM2Q5Y2EyNWU5ZDFiMzgzNg%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3D8f1133bf23c8645d1ba712ebe8184d91)