expr *,expr有什么区别?和Python3.6 AST抽象语法中的expr?

问题描述

Python3.6 AST Abstract Grammar中,内部有expr*expr?expr。他们之间有什么区别?例如:expr* targetsexpr? valueexpr target

解决方法

通常这些后缀的含义与正则表达式相同:

  • <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/myyarns_scroll" android:layout_width="match_parent" android:layout_height="fill_parent" android:background="@color/orange5" android:fillViewport="true" android:isScrollContainer="false" android:paddingLeft="2dp" android:paddingRight="2dp"> <LinearLayout android:id="@+id/LinearLayout0" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <LinearLayout android:id="@+id/myyarns_scan_layout" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1"> <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginLeft="2dp" android:layout_weight="1" android:singleLine="true" android:text="Bar Code" android:textAppearance="?android:attr/textAppearanceMedium" android:textColor="@color/black" /> <Button android:id="@+id/myyarns_add_dialog_scan" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_weight="1" android:text="Scan" /> </LinearLayout> -表达式的一个实例
  • expr-零个或一个实例
  • expr?-零个或多个实例

例如,针对以下内容:

expr*

函数定义仅由一个名称,至少零个语句和asn可选返回值组成(对于不返回任何内容的函数)。