我有一个div id="a",可以从几个组中附加任意数量的类.每个组都有一个特定的前缀.在javascript中,我不知道该组中的哪个类在div上.我希望能够清除具有给定前缀的所有类,然后添加一个新类.如果我想删除所有以"bg"开头的类,我该怎么做?像这样的东西,但实际上有效:
$("#a").removeClass("bg*");
Run Code Online (Sandbox Code Playgroud) 如果我有很多匹配,例如在多行模式下,我想用匹配的一部分替换它们以及增量的计数器号.
我想知道任何正则表达式的味道是否有这样的变量.我找不到一个,但我似乎记得那样存在......
我不是在谈论可以使用回调替换的脚本语言.这是关于能够在RegexBuddy,sublime text,gskinner.com/RegExr等工具中实现这一点,就像你可以用\ 1或$ 1引用捕获的子串一样.
我正在尝试编写一个替换正则表达式来包围引号中的所有单词,但单词AND,OR和NOT除外.
我已经尝试了以下表达式的匹配部分:
(?i)(?<word>[a-z0-9]+)(?<!and|not|or)
Run Code Online (Sandbox Code Playgroud)
和
(?i)(?<word>[a-z0-9]+)(?!and|not|or)
Run Code Online (Sandbox Code Playgroud)
但都没有工作.替换表达式很简单,目前包含所有单词.
"${word}"
Run Code Online (Sandbox Code Playgroud)
所以
这和这不是那个
变
"这个"和"这个"不是"那个"
如何使用正则表达式从URL中仅提取顶级域名和二级域名?我想跳过所有较低级别的域名.有任何想法吗?
我正在学习正则表达式.但我无法理解'\ b',匹配单词边界.有三种情况,像这样:
我无法理解第三种情况.例如:
var reg = /end\bend/g;
var string = 'wenkend,end,end,endend';
alert( reg.test(string) ) ; //false
Run Code Online (Sandbox Code Playgroud)
'\ b'的一侧需要'\ w'字符,另一侧不需要'\ w'字符.字符串'end,end'应该匹配规则,在第一个字符是字符串','之后,在最后一个字符是字符串','之前,为什么结果是错误.请你帮忙,在此先感谢!
============分界线=============
在你的帮助下,我明白了.'end,end'匹配第一个'end'并且有一个边界,但是下一个字符是','而不是'e',所以'/ end\bend'是假的.
换句话说,reg'/ end\bend/g'或其他类似的reg不会永远退出.再次感谢
我正在寻找一种方法来搜索字符串以获得完全匹配或完整的单词匹配. RegEx.Match并且RegEx.IsMatch似乎没有让我在哪里,我想.
请考虑以下情形:
namespace test
{
class Program
{
static void Main(string[] args)
{
string str = "SUBTOTAL 34.37 TAX TOTAL 37.43";
int indx = str.IndexOf("TOTAL");
string amount = str.Substring(indx + "TOTAL".Length, 10);
string strAmount = Regex.Replace(amount, "[^.0-9]", "");
Console.WriteLine(strAmount);
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
}
}
Run Code Online (Sandbox Code Playgroud)
上面代码的输出是:
// 34.37
// Press any key to continue...
Run Code Online (Sandbox Code Playgroud)
问题是,我不想SUBTOTAL的,但IndexOf发现这个词第一次出现TOTAL是在SUBTOTAL然后得到34.37的不正确的值.
所以问题是,有没有办法强制IndexOf只找到一个完全匹配或是否有另一种方法来强制完全匹配的单词,以便我可以找到该完全匹配的索引,然后用它执行一些有用的功能.RegEx.IsMatch并且RegEx.Match是,据我所知道的,只是boolean搜索.在这种情况下,仅知道存在完全匹配是不够的.我需要知道它在字符串中的位置.
任何意见,将不胜感激.
我有问题写grep,只应该grep那些行,其中只有大写字符组成的单词.
例如,我有文件:file1.txt
Abc AAA
ADFSD
F
AAAAx
Run Code Online (Sandbox Code Playgroud)
输出应该是:
Abc AAA
ADFSD
F
Run Code Online (Sandbox Code Playgroud)
谢谢你的建议.
简单的说:
echo "xxxxx Tyyy zzzzz" | egrep "\byyy\b"
Run Code Online (Sandbox Code Playgroud)
(没有匹配正确的)
echo "xxxxx T-yyy zzzzz" | egrep "\byyy\b"
xxxxx T-yyy zzzzz
Run Code Online (Sandbox Code Playgroud)
我不希望它像第二个表达式中那样匹配,请告诉我如何实现这一点,谢谢。
在NFA中,很容易使所有先前非最终状态接受使其匹配给定语言的所有子串的语言.
在Java regex引擎中,有没有办法找出字符串是否是与给定正则表达式匹配的字符串的起始子字符串?
regexX ="任何开始",regexA - 任何给定的正则表达式
"regexXregexA"结果表达式匹配匹配"regexA"的所有子字符串:
例:
regexA = a*b
Run Code Online (Sandbox Code Playgroud)
"a"匹配
"regexXa*b"
Run Code Online (Sandbox Code Playgroud)
因为它是"ab"(和"aab")
编辑的开头:
由于有些人仍然不理解,这里是这个问题的程序测试:
import java.util.regex.*;
public class Test1 {
public static void main(String args[]){
String regex = "a*b";
System.out.println(
partialMatch(regex, "aaa");
);
}
public boolean partialMatch(String regex, String begining){
//return true if there is a string which matches the regex and
//startsWith(but not equal) begining, false otherwise
}
}
Run Code Online (Sandbox Code Playgroud)
结果是真的.
我有一个pandas.Series像这样的句子:
0 mi sobrino carlos bajó conmigo el lunes
1 juan antonio es un tio guay
2 voy al cine con ramón
3 pepe el panadero siempre se porta bien conmigo
4 martha me hace feliz todos los días
Run Code Online (Sandbox Code Playgroud)
另一方面,我有一个像这样的名字和姓氏列表:
l = ['juan', 'antonio', 'esther', 'josefa', 'mariano', 'cristina', 'carlos']
我想将系列中的句子与列表中的名称相匹配。实际数据比这个例子大得多,所以我认为系列和列表之间的元素比较不会有效,所以我创建了一个包含名称列表中所有字符串的大字符串,如下所示:
'|'.join(l)
我尝试创建一个布尔掩码,稍后允许我通过 true 或 false 值索引包含名称列表中名称的句子,如下所示:
series.apply(lambda x: x in '|'.join(l))
Run Code Online (Sandbox Code Playgroud)
但它返回:
0 False
1 False
2 False
3 False
4 False
Run Code Online (Sandbox Code Playgroud)
这显然不行。
我也尝试使用,str.contains()但它的行为不像我预期的那样,因为此方法将查看名称列表中是否存在系列中的任何子字符串,这不是我需要的(即我需要完全匹配)。
你能在这里指出我正确的方向吗?
非常感谢您提前