Regex 需要有关正则表达式和比较的帮助吗

Regex 需要有关正则表达式和比较的帮助吗,regex,tcl,Regex,Tcl,我在tcl正则表达式中有一个小问题 我的样品是这样的 “rollno”是一个变量,它是10211 17311 15111 16111 10111 $rollno一次取一个值。例如rollno=10211 student_1_class_A_Teacher = 10211 student_1_class_B_Teacher = 17311 student_1_class_c_Teacher = 15111 student_2_class_A_Teacher = 16111 student_2_cl

我在tcl正则表达式中有一个小问题

我的样品是这样的

“rollno”是一个变量,它是
10211 17311 15111 16111 10111

$rollno
一次取一个值。例如
rollno=10211

student_1_class_A_Teacher = 10211
student_1_class_B_Teacher = 17311
student_1_class_c_Teacher = 15111
student_2_class_A_Teacher = 16111
student_2_class_B_Teacher = 10111

我需要一个正则表达式来替换正则表达式中的变量“$rollno”,并且应该返回classID=a

因此,如果您有值“15111”和输入文件:

student_1_class_A_Teacher = 10211
student_1_class_B_Teacher = 17311
student_1_class_c_Teacher = 15111
student_2_class_A_Teacher = 16111
student_2_class_B_Teacher = 10111
你想返回“c”吗

您可以尝试以下方法:

class_\w(?=_Teacher = 15111)

这将返回'class_c',然后您可以提取最后一个字符以获得'c'。

感谢您的快速响应,但我需要在正则表达式中给出“$rollno”,在替换该值后,它应该提取值“c”根据你的说法,这个值在正则表达式中被替代了,但是正则表达式没有显示匹配项found@user2100556-我不知道tcl,但我可以想象,您可能希望使用类似于
“\uw(?=\u Teacher=“+$rollno+”)”
(在tcl中查找字符串串联)。对于tcl,您可以使用直接插值:
”类\uw(?=\u Teacher=$rollno)
(双反斜杠是因为您希望RE中有一个反斜杠,而且它也是一个通用的Tcl元字符)。听起来像是我的家庭作业。限制太多:您必须使用regexp,regexp必须包含no。。。