Я ищу данную строку, она должна быть в формате *(*)
, *
не должна содержать пробела, нет двух слов перед (
.
Я ищу в MarkLogic DB, чтобы увидеть,заданное значение столбца в формате [^\s]+\((?!\s)[^()]+(?<!\s)\)
, если не заменить его на этот формат.
Я все еще не могу выбрать данные и не могу написать запрос на обновление
Я ищу базу данныхas
let $query-opts := cts:search(doc(),
cts:and-query((
cts:directory-query(("/xyz/documentData/"),"1"),
cts:element-query(
xs:QName("cd:clause"), (: <clause> element inside extended for checking query id :)
cts:and-query((
cts:element-attribute-value-query( xs:QName("cd:clause"), xs:QName("tag"), "Title" ), (: only if the <clause> is of type "Title" :)
cts:element-attribute-value-query( xs:QName("cd:xmetadata"), xs:QName("tag"), "Author")
))
)
))
for $d in $query-opts
return (
for $x in $d//cd:document/cd:clause/cd:xmetadata[fn:matches(@tag,"Author")]/cd:metadata_string
where fn:matches($x/string(), "[^\s]+\((?!\s)[^()]+(?<!\s)\)")
return
( <documents> {
<documentId> {$d//cd:cdf/cd:documentId/string()}</documentId>
}</documents>
)
)
выдает ошибку недопустимый шаблон