我正在使用C#with .NET构建用户注册表单.我需要验证用户输入的密码字段.验证要求如下.
stack1over)我正在使用如下的正则表达式.
^([a-zA-Z0-9]{6,10})$
Run Code Online (Sandbox Code Playgroud)
它满足了我的前两个条件.当我只输入字符或数字时,它会失败.
我想用下面的方法验证我的文本字段:
1.字母数字
2.所有特殊字符
我都不擅长正则表达式,任何人都可以帮助我为上述事情创建一个正则表达式.
我期待创建一个最小的,计算通用的字母数字x86操作码子集.最终我希望子集包含尽可能少的指令,如果有多个最小子集我也想知道.子集应该能够模拟可以用整套字母数字指令编写的任何程序.说明应仅涵盖与"AZ","az"和"0-9"字符对应的说明.
到目前为止,我认为一个push,pop,inc,dec,cmp,和je就足够了,但我敢肯定有一个较小的一套.我怎样才能证明我生成的集合能够使用所有字母数字指令模拟任何程序?我怎么能证明这样的一套是最小的?有谁知道这样的指令子集是否存在?
尝试验证字符串中只包含小写,大写或数字.
if ! [[ "$TITLE" =~ ^[a-zA-Z0-9]+$ ]]; then echo "INVALID"; fi
Run Code Online (Sandbox Code Playgroud)
思考?
*更新*
变量TITLE目前只有大写文本,所以它应该通过,不应输出任何内容.但是,如果我向TITLE添加一个特殊字符,IF语句应该捕获它并回显INVALID.目前它不起作用.它总是回声无效.我认为这是因为我的正则表达式是错误的.我想我写它的方式,它寻找一个包含所有三个标题的标题.
Bash 4.2.25
这个想法是,用户应该能够添加任何标题,只要它只包含大写,小写或数字.所有其他角色都应该失败.
*更新*
如果TITLE = ThisIsAValidTitle它回声无效.
如果TITLE = ThisIs @@@@@@@ InvalidTitle,它也无效.
*解决方案*
很奇怪,当我简化它时,它开始工作了:
TEST="Valid0"
if ! [[ "$TEST" =~ [^a-zA-Z0-9] ]]; then
echo "VALID"
else
echo "INVALID"
fi
Run Code Online (Sandbox Code Playgroud)
*真正解决方案*
我的变量中有空格...... DUH
对不起麻烦的家伙......
*最终解决方案*
这说明了标题中的空格
if ! [[ "$TITLE" =~ [^a-zA-Z0-9\ ] ]]; then
echo "VALID"
else
echo "INVALID"
fi
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个(完美)哈希表来压缩从unicode代码点名称到其代码点编号的映射(将第二列映射到第一列).正如你可以看到有,可能的输入都非常有限,实际上有一个在字母恰好38个字符:AB...YZ,0...9,-和空间.此外,还有大量的(子)的重复,DIGIT ZERO,DIGIT ONE,... LATIN CAPITAL LETTER A,LATIN CAPITAL LETTER B等等.
通过选择种子来计算完美的哈希表S,然后尝试构造一个完美的哈希表种子(以某种方式)播种S.如果无法创建表,则会使用新种子重试.有很多冲突通常需要更多的重试,因为算法更难以使一切都适合.
这样做的结果是我的输入域具有低熵,并且表创建需要使用像DJB2这样的简单散列函数进行大量重试; 像FNV这样的更好的编组器可以很好地工作,但是像SipHash这样的更复杂和更慢的功能似乎平均需要更少的重试.
由于这是完全静态和预先计算的,我不太为质量而担心质量(即运行时任意输入的安全性和概率分布无关紧要),但更高质量的功能减少了给定级别所需的预计算时间相反,压缩,允许我在一些固定的时间内实现更高的压缩.
问题:是否有高效的已发布哈希函数调整为输入域限制,如下所示?也就是说,是否存在利用额外结构来执行更少操作但仍能实现合理输出的哈希函数?
我搜索过像'字母数字哈希函数'之类的东西,但结果是无关的(大多只是生成一个字母数字字符串作为哈希函数的输出); 甚至一些关于正确行话的指导,以便我可以搜索论文会有所帮助.
(这个问题的动机是稍微有点难以解决,而不是实际需要.)
我想创建序列以字符开头inv并增加1
价值观
INV01
INV02
INV03
etc...
Run Code Online (Sandbox Code Playgroud)
CREATE SEQUENCE invoice_nun
START WITH "INV"
INCREMENT BY 1
Run Code Online (Sandbox Code Playgroud) 为什么YouTube,Imgur和其他大多数网站都使用随机字符作为内容ID,而不仅仅是序列号,就像MySQL中的自动增量创建的那样?
解释一下我的意思:
在网址中:https://www.youtube.com/watch?v = QMlXuT7gd1I
最后的QMlXuT7gd1I表示该页面上的特定视频,但我假设该视频在数据库中也有唯一的数字ID.为什么他们创建和使用这个字母数字字符串而不是仅仅使用视频的数据库ID?
我正在创建一个标识URL中内容的网站,但我目前只使用数据库ID.我正在考虑切换到随机字符串,因为所有主要网站都这样做,但我想知道为什么在我实现它之前完成它.
谢谢!
试图用PHP编写一般的4位字母数字系列.
图案如下
0000
0001
....
....
9999
A000
A001
....
....
A999
B000
....
....
Z999
AA00
....
....
AA99
AB00
... .
....
ZZ99
AAA0
....
....
AAA9
AAB0
....
....
ZZZZ
我试图根据Z和No的9来制作逻辑,但是没有任何具体的结果.
我正在尝试编写一个代码,该代码将返回输入系列最后一个数字的系列的下一个数字.
任何提示或线索将不胜感激
该CODA规格指的是字母数字,但我找不到在哪里定义的一组允许的字符.
检查由可靠的比利时银行发出的样本CODA文件,我可以看到字母,数字,括号,破折号,点,冒号,斜线,空格
还有什么是有效的alphanum?
我正在寻找一个正则表达式来提取只包含字母数字字符的单词:
string = 'This is a $dollar sign !!'
matches = re.findall(regex, string)
matches = ['This', 'is', 'sign']
Run Code Online (Sandbox Code Playgroud)
这可以通过对字符串进行标记并使用以下正则表达式单独评估每个标记来完成:
^[a-zA-Z0-9]+$
Run Code Online (Sandbox Code Playgroud)
由于性能问题,我希望能够在不标记整个字符串的情况下提取字母数字标记。我最接近的是
regex = \b[a-zA-Z0-9]+\b
Run Code Online (Sandbox Code Playgroud)
,但它仍然提取包含字母数字字符的子字符串:
string = 'This is a $dollar sign !!'
matches = re.findall(regex, string)
matches = ['This', 'is', 'dollar', 'sign']
Run Code Online (Sandbox Code Playgroud)
是否有正则表达式能够解决这个问题?我尝试了不同的方法,但找不到解决方案。
alphanumeric ×10
regex ×4
php ×2
sequence ×2
string ×2
bash ×1
c# ×1
char ×1
coda-format ×1
database ×1
generator ×1
hash ×1
if-statement ×1
javascript ×1
logic ×1
numbers ×1
opcode ×1
oracle ×1
python ×1
random ×1
validation ×1
x86 ×1