# #python #regex #flask #dialogflow-es #entities
Вопрос:
длина пароля должна быть не менее 6 символов при регистрации с помощью чат-бота Dialogflow. Я использовал системный объект «любой». Но это так обобщенно. Webhook написан на колбе python.
Также попытался сделать это, используя [0-9]{6}$ в качестве объекта регулярного выражения. Но не смог найти правильного способа выполнить эту задачу.
from dialogflow_fulfillment import QuickReplies, WebhookClient, Payload
from flask import Flask, request, Response, jsonify , make_response
import json
import requests
app = Flask(__name__)
def handler(agent: WebhookClient) :
"""Handle the webhook request.."""
req = request.get_json(force=True)
intent_name = req.get('queryResult').get('intent').get('displayName')
if intent_name == 'intro':
agent.add('I am the chatbot of this page. Ready to assist you with anything you need. What would you like to do?')
agent.add(QuickReplies(quick_replies=['START NOW','LOGIN']))
if intent_name == 'get_started':
url = 'http://**********.com/create_account'
userid = req.get('queryResult').get('parameters').get('email')
print(userid)
pwd = req.get('queryResult').get('parameters').get('pwd')
print(pwd)
name = req.get('queryResult').get('parameters').get('person')['name']
print(name)
age = req.get('queryResult').get('parameters').get('age')
print(age)
myobj = {'userid': userid, 'pwd': pwd , 'name' : name, 'age' : age}
x = requests.post(url, data = myobj)
result=x.text
agent.add(result)
if intent_name == 'login_screen' :
url = 'http://**********.com/auth_account'
userid = req.get('queryResult').get('parameters').get('email')
print(userid)
pwd = req.get('queryResult').get('parameters').get('pwd')
print(pwd)
myobj = {'userid': userid, 'pwd': pwd }
x = requests.post(url, data = myobj)
result = x.text
agent.add(result)
@app.route('/webhook', methods=['GET', 'POST'])
def webhook():
"""Handle webhook requests from Dialogflow."""
req = request.get_json(force=True)
agent = WebhookClient(req)
agent.handle_request(handler)
return agent.response
if __name__ == '__main__':
app.run(debug=True)
С регулярным выражением :
Определенное регулярное выражение :
Как это правильно сделать? Как использовать в нем регулярное выражение? Или мне следует использовать другой подход?
Комментарии:
1. Пожалуйста, размещайте код в виде текста между тегами кода вместо использования изображений
2. @An0ther0ne, Не могли бы вы, пожалуйста, определить выражение регулярного выражения?
3. @SamiyaJabbar можете ли вы добавить эту попытку, которую вы выполнили? Каков был эффект?
4. @vitooh отредактировано. Теперь проверьте это.