как избежать пробела в текстовом поле в c # [дубликат]

git log --graph --decorate --oneline A B master (или эквивалентный инструмент GUI) можно использовать после каждой команды git для визуализации изменений.

Это начальное состояние репозитория, а B - текущая ветка.

(B) git log --graph --oneline --decorate A B master
* 5a84c72 (A) C6
| * 9a90b7c (HEAD -> B) C9
| * 2968483 C8
| * 187c9c8 C7
|/  
* 769014a C5
* 6b8147c C4
* 9166c60 C3
* 0aaf90b (master) C2
* 8c46dcd C1
* 4d74b57 C0

Вот скрипт для создания репозитория в этом состоянии.

#!/bin/bash

commit () {
    for i in $(seq $1 $2); do
        echo article $i > $i
        git add $i
        git commit -m C$i
    done
}

git init
commit 0 2

git checkout -b A
commit 3 6

git checkout -b B HEAD~
commit 7 9

Первая команда rebase ничего не делает.

(B) git rebase master
Current branch B is up to date.

Проверка out master и слияние B просто указывает master при том же фиксации, что и B, (т.е. 9a90b7c). Никаких новых коммитов не создано.

(B) git checkout master
Switched to branch 'master'

(master) git merge B
Updating 0aaf90b..9a90b7c
Fast-forward
<... snipped diffstat ...>

(master) git log --graph --oneline --decorate A B master
* 5a84c72 (A) C6
| * 9a90b7c (HEAD -> master, B) C9
| * 2968483 C8
| * 187c9c8 C7
|/  
* 769014a C5
* 6b8147c C4
* 9166c60 C3
* 0aaf90b C2
* 8c46dcd C1
* 4d74b57 C0

Вторая команда rebase копирует коммиты в диапазоне A..B и указывает их на master. Три коммиты в этом диапазоне: 9a90b7c C9, 2968483 C8, and 187c9c8 C7. Копии - новые коммиты с их собственными идентификаторами фиксации; 7c0e241, 40b105d и 5b0bda1. Фигуры master и A не изменяются.

(B) git rebase --onto master A B
First, rewinding head to replay your work on top of it...
Applying: C7
Applying: C8
Applying: C9

(B) log --graph --oneline --decorate A B master
* 7c0e241 (HEAD -> B) C9
* 40b105d C8
* 5b0bda1 C7
| * 5a84c72 (A) C6
| * 769014a C5
| * 6b8147c C4
| * 9166c60 C3
|/  
* 0aaf90b (master) C2
* 8c46dcd C1
* 4d74b57 C0

Как и раньше, проверка master и слияние B просто указывает master на ту же фиксацию, что и B, ( т.е. 7c0e241). Никаких новых коммитов не создано.

Исходная цепочка фиксаций, указывающая B, все еще существует.

git log --graph --oneline --decorate A B master 9a90b7c
* 7c0e241 (HEAD -> master, B) C9
* 40b105d C8
* 5b0bda1 C7
| * 5a84c72 (A) C6
| | * 9a90b7c C9    <- NOTE: This is what B used to be
| | * 2968483 C8
| | * 187c9c8 C7
| |/  
| * 769014a C5
| * 6b8147c C4
| * 9166c60 C3
|/  
* 0aaf90b C2
* 8c46dcd C1
* 4d74b57 C0
3
задан Surya sasidhar 15 October 2009 в 06:13
поделиться

3 ответа

Если вы хотите записать значение, где пробелы не являются допустимым символом, вы можете использовать RegularExpressionValidator :

<asp:RegularExpressionValidator ID="rev" runat="server" ControlToValidate="txtBox"
    ErrorMessage="Spaces are not allowed!" ValidationExpression="[^\s]+" />
<asp:RequiredFieldValidator ID="rfv" runat="server" ControlToValidate="txtBox" 
    ErrorMessage="Value can't be empty" />

Это предотвратит «привет мир» и «база данных», поскольку они содержат пробелы и позволят только «helloworld» и «database» в качестве допустимых значений. Вы должны использовать RequiredFieldValidator в сочетании с ним, чтобы предотвратить пустые записи, поскольку RegularExpressionValidator не мешает этому самостоятельно.

Укажите имя текстового поля в свойстве ControlToValidate.

8
ответ дан Ahmad Mageed 18 August 2018 в 10:39
поделиться

Вы можете использовать регулятор RegularExpressionValidator :

<asp:TextBox runat="server" ID="txt1" />
<asp:RegularExpressionValidator 
  runat="server" ErrorMessage="Spaces are not permitted" 
  ControlToValidate="txt1"
  ValidationExpression="[^\s]+" />

Образец [^\s]+ означает «один или несколько символов, которые не являются пробелами». Поэтому, если какой-либо из символов является пространством, он потерпит неудачу.

1
ответ дан Rex M 18 August 2018 в 10:39
поделиться
  • 1
    @anon, почему DV? – Rex M 15 October 2009 в 06:20
  • 2
    как это работает. Rex M – Surya sasidhar 15 October 2009 в 06:23
  • 3
    я думаю, что вы не понимаете, потому что предположите, что пользователь вводит «базу данных» в текстовое поле. Я хочу добавить сообщение о том, что между словами, которые пользователь должен вводить без пробела, как «база данных», – Surya sasidhar 15 October 2009 в 06:25
  • 4
    @ Сурья спасибо, теперь я понимаю лучше. Я пересмотрел ответ, чтобы сделать то, что вам нужно. – Rex M 15 October 2009 в 06:30
  • 5
    thank u Mr.Rex M работает – Surya sasidhar 15 October 2009 в 06:44

Это может помочь вам удалить ваши пробелы в документе, попробуйте.

<asp:TextBox runat="server" ID="txttitlename" />
<asp:RegularExpressionValidator runat="server" ErrorMessage="Spaces are not acceptable" ontrolToValidate="txttitlename" ValidationExpression="[^\s]+" />
0
ответ дан ɢʀᴜɴᴛ 18 August 2018 в 10:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: