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

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

新規登録して質問してみよう
ただいま回答率
85.50%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Q&A

1回答

1033閲覧

セルデータの使用文字をチェックする方法

h_tw

総合スコア9

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

0グッド

0クリップ

投稿2017/07/20 13:05

C# 始めたばかりの初心者です。

Datagridviewのセル情報を取得して、
セルの中の文字列が半角英数のみで、特定の記号("-","_",".")以外の文字を見つけたら弾く様にする。

セルデータの取得はできたのですが、セルデータのチェックの方法がよく分かりません……
Switch文でループしてセル情報を見ていくのは分かるのですが……。
正規表現で引っ掛けて行けばいいのでしょうか……?
また、どのコマンドを使用するといいのかが調べてもよくわかりません……。

恐らく初歩的な質問だと思うのですが、教えていただけないでしょうか……。
よろしくお願い致します。

###補足情報(言語/FW/ツール等のバージョンなど)
VisualStudio2015 C#

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2017/07/21 00:00

どういう状況・タイミングでそれをするのですか? 初期画面の表示の時? ユーザー入力の時? あと、何を作っているか(DataGridView という言葉から Windows Forms アプリと想像していますが、きちんと書いた方が良いです)と、ご自分の開発環境(VS のバージョンだけでなく、OS, .NET のバージョンなども)を書いていただきたく。
guest

回答1

0

やりたいことが明確ではないので、これで満たせるかわかりませんが。。
※正規表現の部分は自信なし

C#

1using System; 2using System.Text.RegularExpressions; 3using System.Windows.Forms; 4 5namespace WindowsFormsApp1 6{ 7 public partial class Form1 : Form 8 { 9 public Form1() 10 { 11 InitializeComponent(); 12 } 13 14 private void button1_Click(object sender, EventArgs e) 15 { 16 foreach (DataGridViewRow row in this.dataGridView1.Rows) 17 { 18 foreach (DataGridViewCell cell in row.Cells) 19 { 20 var val = cell.Value.ToString(); 21 if (IsValid(val)) 22 { 23 //正しい入力 24 } 25 else 26 { 27 //正しくない入力(弾きたいもの) 28 } 29 } 30 } 31 } 32 33 private readonly Regex Reg = new Regex(@"[0-9a-zA-Z\-_\.]+"); 34 private bool IsValid(string target) 35 { 36 return (Reg.IsMatch(target)); 37 } 38 } 39}

セルデータの取得はできた

とのことなので、主題はチェックの方法でしょうか?

Switch文でループ

foreachですかね。

いつ、なにを、どのように、なぜ、どうしたい、このあたりが明確になるとより正しい回答が得られると思います。

投稿2017/07/24 07:05

ShikaTech

総合スコア468

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問