RicardoSantos

StringEvaluation

RicardoSantos Wizard ที่อัปเดต:   
Library "StringEvaluation"
Methods to handle evaluation of strings.

is_comma(char) Check if char is a comma ".".
Parameters:
  • char: string, 1 character string.
Returns: bool.

is_op(char) Check if char is a operator.
Parameters:
  • char: string, 1 character string.
Returns: bool.

number(char) convert a single char string into valid number.
Parameters:
  • char: string, 1 character string.
Returns: float.

operator(op, left, right) operation between left and right values.
Parameters:
  • op: string, operator string character.
  • left: float, left value of operation.
  • right: float, right value of operation.


operator_precedence(op) level of precedence of operator.
Parameters:
  • op: string, operator 1 char string.
Returns: int.

cleanup(_str) Evaluate a string to clean up and retrieve only used chars
Parameters:
  • _str: string, arithmetic operations in a string.
Returns: string array, evaluated array.

generate_rpn(tokens) uses Shunting-Yard algorithm to generate a RPN (Reverse Polish notation)
array of strings from a array of strings containing arithmetic notation.
ex:.. '' --> ''
Parameters:
  • tokens: string array, array with arithmetic notation.
Returns:

parse_rpn() evaluate a RPN (Reverse Polish notation) array of strings.
ex:.. 3 4 2 * 1 5 - 2 3 ^ ^ / +
| @param tokens string array, RPN ordered tokens, ex().
| @returns float, solution.

eval() evaluate a string with references to a array of arguments.
| @param tokens string, arithmetic operations with references to indices in arguments, ex:"0+1*0+2*2+3" arguments
| @param arguments float array, arguments.
| @returns float, solution.
เอกสารเผยแพร่:
v2
Update: supports boolean operators and float numbers now
Added:
is_op_component(char) Check if char is a operator component.
  Parameters:
    char: string, 1 character string.
  Returns: bool.

is_boolean_op(char) Check if char is a boolean operator.
  Parameters:
    char: string, 1 character string.
  Returns: bool.

is_alpha(char) Check if char is alphabet.
  Parameters:
    char: string, 1 character string.
  Returns: bool.

boolean_operator(op, left, right) boolean operation between left and right values.
  Parameters:
    op: string, operator string character.
    left: float, left value of operation.
    right: float, right value of operation.

boolean_operator_precedence(op) level of precedence of operator.
  Parameters:
    op: string, operator 1 char string.
  Returns: int.

aggregate_words(tokens) Aggregates words, numbers and operators into one.
  Parameters:
    tokens: string array, array with split string into character tokens.
  Returns: string array.
เอกสารเผยแพร่:
v3 minor modification to see if it fixes a bug..
เอกสารเผยแพร่:
v4 small test to see if i capture the source of a bug..
ไลบรารีไพน์

จิตวิญญาณที่แท้จริงของ TradingView ผู้เขียนได้ตีพิมพ์รหัส Pine นี้เป็นไลบรารีโอเพนซอร์ซเพื่อให้โปรแกรมเมอร์คนอื่น ๆ จากชุมชนของเราสามารถนำไปใช้ซ้ำได้ ไชโยให้กับผู้เขียน! คุณสามารถใช้ไลบรารีนี้เป็นการส่วนตัวหรือในสิ่งพิมพ์โอเพนซอร์สอื่น ๆ แต่นำรหัสนี้มาใช้ซ้ำในสิ่งพิมพ์จะถูกควบคุมโดย กฎระเบียบการใช้งาน

คำจำกัดสิทธิ์ความรับผิดชอบ

ข้อมูลและบทความไม่ได้มีวัตถุประสงค์เพื่อก่อให้เกิดกิจกรรมทางการเงิน, การลงทุน, การซื้อขาย, ข้อเสนอแนะ หรือคำแนะนำประเภทอื่น ๆ ที่ให้หรือรับรองโดย TradingView อ่านเพิ่มเติมที่ เงื่อนไขการใช้บริการ

ต้องการใช้ไลบรารีนี้หรือไม่?

คัดลอกข้อความไปยังคลิปบอร์ดแล้ววางลงในสคริปต์ของคุณ