删除$select子句
本文关键字:子句 select 删除 | 更新日期: 2023-09-27 18:14:15
我需要删除OData查询的$select部分,可能的字符串如下
$select=FirstName,LastName
$select=FirstName,LastName&$filter=FirstName eq 'John'
$filter=FirstName eq 'John'&$select
所以我得出的规则如下:
- 删除所有以$select开头的内容,如果没有&字符
- 删除所有以$select开头的内容,直到下一个&是否有一种方法来编写一个正则表达式来测试两个场景和清洁我的OData URL?
现在我有以下测试:
var query = "$select=FirstName";
var query = "$select=FirstName&$filter=FirstName eq 'John'";
var query = "$filter=FirstName eq 'John'&$select=FirstName";
var query = "$filter=FirstName eq 'John'";
我还需要删除&如果$select是第一个子句或前面的&如果$select是最后一个子句
类似于
^'$select[^&]*
应该这样做
解释:
^ start of string (remove this if that's not actually a requirement)
'$select match the literal string "$select"
(note that $ is escaped because $ is end of string)
[^&]* match anything that ISN'T an &, greedy