Страницы: 1
RSS
Power Query. Как отфильтровать те слова, которые содержат букву "а" затем после этой буквы где-то дальше (правее) букву "р" ?, в excel'e, в обычном фильтре - Содержит: а*р
 
Добрый день.
1) Как в PQ отфильтровать те слова, которые содержат букву "а" затем после этой буквы где-то дальше (правее) букву "р" ? (см. рисунок №1)
2) Как в PQ отфильтровать те слова, которые содержат букву "а" затем после этой буквы где-то дальше (правее) букву "р", но "р" НЕ ДОЛЖНА ИДТИ СРАЗУ ПОСЛЕ "а"? (см. рисунок №2)


P.S.
В excel'e, в обычном фильтре так:
1) Содержит а*р
2) Содержит а?*р
Изменено: Бахтиёр - 16.02.2018 15:16:06
 
Как-то так:
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Слова", type text}}),
    #"Добавлен пользовательский объект" = Table.AddColumn(#"Измененный тип", "Пользовательская", each 
try 
Text.Contains([Слова],"а") and 
Text.Contains(
  Text.End(
    [Слова],
    Text.Length([Слова])-Text.PositionOf([Слова],"а")-1),
  "р")
otherwise false),
    #"Строки с примененным фильтром" = Table.SelectRows(#"Добавлен пользовательский объект", each ([Пользовательская] = true)),
    #"Удаленные столбцы" = Table.RemoveColumns(#"Строки с примененным фильтром",{"Пользовательская"})
in
    #"Удаленные столбцы"

Обновил вложение. Там второй скрипт изменен, добавил проверку, что символ следующий за "а" не равен "р", до этого я его просто пропускал, что не верно.
Изменено: PooHkrd - 16.02.2018 15:41:03
Вот горшок пустой, он предмет простой...
 
В лоб. Поьзовательский столбец и формула:
1.
Код
(Text.PositionOf(Text.Lower([Значения]),"р",Occurrence.Last)-Text.PositionOf(Text.Lower([Значения]),"а"))>0)

2.
Код
(Text.PositionOf(Text.Lower([Значения]),"р",Occurrence.Last)-Text.PositionOf(Text.Lower([Значения]),"а"))>1)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий Щербаков, а так красивше!
Но вторая формула не работает. Если написать слово "баррикада", то она его пропускает, а по условию не должна. Но в принципе исправить понятно как.
Изменено: PooHkrd - 16.02.2018 15:50:07
Вот горшок пустой, он предмет простой...
 
Дмитрий, PooHkrd, спасибо, изучаю.
 
Цитата
PooHkrd написал:
слово "баррикада",
так ведь там "р" идет и после "а" и через одну :) Пересекающееся условие. Но поправить да, не сложно. Думаю, Бахтиёр додумает под свои хотелки.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1
Наверх