Tsai Chi-huang
Tsai Chi-huang (born 29 September 1968) is a Taiwanese professional golfer.
Tsai Chi-huang | |
---|---|
Personal information | |
Born | 29 September 1968 |
Nationality | |
Career | |
Status | Professional |
Current tour(s) | Asian Tour |
Professional wins | 4 |
Number of wins by tour | |
Asian Tour | 2 |
Other | 2 |
Tsai has won several events in Taiwan and China, including the 2002 and 2012 Mercuries Taiwan Masters,[1] and the 1997 Taiwan Open
Professional wins (4)
Asian Tour wins (2)
No. | Date | Tournament | Winning score | Margin of victory | Runner-up |
---|---|---|---|---|---|
1 | 25 Aug 2002 | Mercuries Taiwan Masters | –14 (68-69-68-69=274) | 5 strokes | |
2 | 30 Sep 2012 | Mercuries Taiwan Masters (2) | –4 (74-69-65-76=284) | 4 strokes |
Other wins (2)
- 1997 Taiwan Open
- 2008 Luxehills Chengdu Open (Omega China Tour)
Team appearances
Amateur
- Eisenhower Trophy (representing Taiwan): 1990
Professional
gollark: ... also array literals, bee their bad docs.
gollark: Please also give me write access to the repo.
gollark: Oh, right, array indexing.
gollark: ```python# parsita-based pseudocode syntax parserfrom stmt import *from parsita import *from parsita.util import constantdef compose(f, g): return lambda x: f(g(x))def map_expr(x): start, end = x if end == "": return start return Op([start, end[1]], end[0])def map_unop_expr(x): return Op(x[1], x[0])def aliases(name, aliases): p = lit(name) for alias in aliases: p |= (lit(alias) > (lambda _: name)) return pclass ExprParser(TextParsers): ε = lit("") IntLit = reg("\-?[0-9]+") > compose(IntLit, int) StrLit = "'" >> reg("[^']*") << "'" > StrLit # TODO escapes (not in "spec" but could be needed) FloatLit = reg("\-?[0-9]+\.[0-9]+") > compose(FloatLit, float) Identifier = reg("[a-zA-Z_]+[a-zA-Z_0-9]*") > Var BracketedExpr = "(" >> Expr << ")" UnaryOperator = lit("NOT") Start = FloatLit | StrLit | IntLit | BracketedExpr | (UnaryOperator & Expr > map_unop_expr) | Identifier # avoid left recursion problems by not doing left recursion # AQA pseudocode does not appear to have a notion of "operator precedence", simplifying parsing logic nicely BinaryOperator = aliases("≤", ["<="]) | aliases("≠", ["!="]) | aliases("≥", [">="]) | lit("DIV") | lit("MOD") | lit("AND") | lit("OR") | reg("[+/*\-=<>]") End = (BinaryOperator & Expr) | ε Expr = (Start & End) > map_exprparse = ExprParser.Expr.parsex = parse("1+2+3 != 6 AND NOT 4 AND x + y")if isinstance(x, Failure): print(x.message)else: print(x.value)```
gollark: <@332271551481118732> Expression parsing is done, I think.
References
- "Tsai Hans On To Win". Asian Tour. 30 September 2012. Retrieved 4 October 2012.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.