簡體   English   中英

“和”的正則表達式

[英]Regular expression of ' and "

不允許輸入'和'的正則表達式是什么?

因為當用戶使用'例如:我是右先生->輸入文本時,這會在SQL 2008上導致錯誤。

我知道,我有2個選擇:

  1. 不允許用戶輸入'和“”(使用正則表達式)
  2. 我將用'和'替換所有的'(我不知道它是否有效)

正則表達式的解決方案:

<dx:ASPxTextBox runat="server" EnableClientSideAPI="True" Width="160px" ID="Info"
                            ClientInstanceName="Email">
                            <ValidationSettings SetFocusOnError="True">
                                <RegularExpression ErrorText="Invalid e-mail" ValidationExpression="" />
                                <RequiredField IsRequired="True" ErrorText="E-mail is required" />
                            </ValidationSettings>
                        </dx:ASPxTextBox>

替換解決方案:

Info.Replace("'", "\'");

提前謝謝你,史蒂夫

正則表達式是^[^'"]*$ ,它將接受除這兩個字符以外的任何字符。

要使用C#編寫此代碼,請使用:

@"^[^'""]*$"

如果打算將地址插入數據庫,則可能需要刪除或轉義其他字符。 實際上,您應該使用自動執行此操作的工具,例如linq-to-sql或entity-framework。

如果只希望用戶輸入文本,則編寫一個簡單的正則表達式,不允許用戶輸入單引號或雙引號。

        Regex valid = new Regex(@"^[A-Za-z]+$");           
        if (valid.IsMatch(TextBox.Text))
        {
         // write code here...
        }
        else
        {
            MessageBox.Show("Error","Error");
        }

您將不需要編寫特殊的正則表達式:Regex valid = new Regex(@“ ^ ['] * $”);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM