проверка наличия в указанной строке c в графе cosmosDB с использованием pythongremlin api - PullRequest
0 голосов
/ 05 августа 2020

У меня есть 2 вершины "WEEK" на графике azure cosmosdb.

g.V().hasLabel('WEEK').valueMap()

вывод:


{
    "type":["1 week|1 month|1 wk|one month|one week|one wk"]
},
{
    "type":["11 weeks|11 months|11 wks|eleven months|eleven weeks|eleven wks"]
}

Я пытаюсь найти СОДЕРЖИТ СТРОКУ в " введите свойство и верните вершины.

STRING = «1 неделя»

g.V().hasLabel('WEEK').has('type',TextP.containing('1 week')).valueMap()

вывод:


{
    "type":["1 week|1 month|1 wk|one month|one week|one wk"]
},
{
    "type":["11 weeks|11 months|11 wks|eleven months|eleven weeks|eleven wks"]
}

Я получаю все вершины, потому что «11 недель | 11 месяцев | 11 недель | одиннадцать месяцев | одиннадцать недель | одиннадцать недель "также содержат" 1 неделю ".

Мое требование состоит в том, что я должен искать операцию contains, но должна присутствовать только первая вершина не второй.

одна идея может заключаться в изменении данных в свойстве "type" и изменении строки поиска, как показано ниже

g.V().hasLabel('WEEK').valueMap()

вывод:


{
    "type":["(1 week)|(1 month)|(1 wk)|(one month)|(one week)|(one wk)"]
},
{
    "type":["(11 weeks)|(11 months)|(11 wks)|(eleven months)|(eleven weeks)|(eleven wks)"]
}

STRING = "(1 неделя)"

g.V().hasLabel('WEEK').has('type',TextP.containing('(1 week)')).valueMap()

вывод:


{
    "type":["(1 week)|(1 month)|(1 wk)|(one month)|(one week)|(one wk)"]
}

, но таким образом нам нужно изменить все данные в свойстве «type» и изменить STRING также с «1 недели» до «(1 неделя)» (поскольку «1 неделя» получена из апстрима)

Пожалуйста, дайте мне знать любые другие идеи для вышеуказанного сценария rio (выполнение обязательно)

Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 05 августа 2020

Вы можете поместить | в начало данных, а затем искать

 STRING= "|1 week"
0 голосов
/ 05 августа 2020

Ваш вопрос немного сбивает с толку, но что-то вроде приведенного ниже должно возвращать ТОЛЬКО LIST[0], так как это только LIST[2]. Он вернет только строку в первой позиции массива, которая будет LIST [0]

public string[] LIST = { "1 week|1 month|1 wk|one month|one week| one wk","11 weeks|11 months|11 wks|eleven months|eleven weeks|eleven wks"};
public string STRING = "1 Week";
public int LISTLength = LIST.Length;

for(int x = 0; x < LISTLength; x++)
 {
   if (LIST[x] == STRING)
     {
       //Your action here
     }
 }
0 голосов
/ 05 августа 2020

Вы могли бы искать элементы, которые содержат вашу строку поиска + имеют такое же количество символов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...