从匹配正则表达式的结果中删除最后一个字符

时间:2013-12-03 17:44:47

标签: regex jmeter

我正试图在jmeter测试中提取部分html。

我需要从<script src=""标记中提取一部分。

  • 完整脚本src: <script src="/Paginas/Inicializacao/AguardarAcao.aspx?_TSM_HiddenField_=ctl00_ToolkitScriptManager1_HiddenField&amp;_TSM_CombinedScripts_=%3b%3bAjaxControlToolkit%2c+Version%3d1.0.11119.38311%2c+Culture%3dneutral%2c+PublicKeyToken%3d28f01b0e84b6d53e%3apt-BR%3adf9c6e46-ef8c-4a3d-89af-f80adf22e9c2%3a865923e8%3a411fea1c%3ae7c87f07%3a91bd373d%3a1d58b08c%3a8e72a662%3aacd642d2%3a596d588c%3a77c58d20%3a14b56adc%3a269a19ae" type="text/javascript"></script>

  • 我需要: %3b%3bAjaxControlToolkit%2c+Version%3d1.0.11119.38311%2c+Culture%3dneutral%2c+PublicKeyToken%3d28f01b0e84b6d53e%3apt-BR%3adf9c6e46-ef8c-4a3d-89af-f80adf22e9c2%3a865923e8%3a411fea1c%3ae7c87f07%3a91bd373d%3a1d58b08c%3a8e72a662%3aacd642d2%3a596d588c%3a77c58d20%3a14b56adc%3a269a19ae

现在我创建了这个正则表达式:

%3b.*" 

匹配:

%3b%3bAjaxControlToolkit%2c+Version%3d1.0.11119.38311%2c+Culture%3dneutral%2c+PublicKeyToken%3d28f01b0e84b6d53e%3apt-BR%3adf9c6e46-ef8c-4a3d-89af-f80adf22e9c2%3a865923e8%3a411fea1c%3ae7c87f07%3a91bd373d%3a1d58b08c%3a8e72a662%3aacd642d2%3a596d588c%3a77c58d20%3a14b56adc%3a269a19ae" 

但我不想要最后两个字符(一个空格)和" 如何删除最后两个字符?

3 个答案:

答案 0 :(得分:5)

也许积极的前瞻可能会有所帮助,例如:

%3b.*(?="\s)

答案 1 :(得分:4)

使用正则表达式

%[^"]+

答案 2 :(得分:-3)

^(.*).{1} 

效果很好

^表示行的开头,(。*)捕获任意数量的字符,而。{1}删除字符串中的最后一个字符

例如:

输入:100.00%
输出100.00