Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Count Specific Text

New Here ,
Jun 03, 2019 Jun 03, 2019

I'm new to to this and looking for help creating Java script to count multiple letters.  Example: A**A, or AA would be added up and total displayed in bottom cell under category "A**A". I attached a photo for reference. Thanks for the help.

https://ibb.co/6WdxMcf

TOPICS
Acrobat SDK and JavaScript
733
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Community Expert , Jun 04, 2019 Jun 04, 2019

OK. Let's say they are called Code1 to Code32 and you want to count all the fields whose values start with "A" and end with "B" and show the result in a field called Total2. You can use this code as the custom calculation script of Total2:

var total = 0;

for (var i=1; i<=32; i++) {

    var f = this.getField("Code"+i).valueAsString;

    var v = f.valueAsString;

    if (v.charAt(0)=="A" && v.charAt(v.length-1)=="B") total++;

}

event.value = total;

You can easily adjust this code for the other total fields

...
Translate
Community Expert ,
Jun 04, 2019 Jun 04, 2019

You need to clearly define the rules of how this is supposed to work. What does "**" mean? What does "-" mean?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 04, 2019 Jun 04, 2019

Sorry A-A, A**A is user input. House A**A, but user can input AA or A-A and still have it counted.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jun 04, 2019 Jun 04, 2019

I still don't understand. Are those literal strings? If so, why in your example is the result for "A**A" 3, even though it only appears only once in the table?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jun 04, 2019 Jun 04, 2019

Ah, I think I see what you mean now... So "A**A" means it start with "A" and ends with "A", basically?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jun 04, 2019 Jun 04, 2019

What are the names of the fields in which the values are entered?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 04, 2019 Jun 04, 2019

I haven't created any fields/ names yet, I was going to based on whatever example code giving.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jun 04, 2019 Jun 04, 2019

OK. Let's say they are called Code1 to Code32 and you want to count all the fields whose values start with "A" and end with "B" and show the result in a field called Total2. You can use this code as the custom calculation script of Total2:

var total = 0;

for (var i=1; i<=32; i++) {

    var f = this.getField("Code"+i).valueAsString;

    var v = f.valueAsString;

    if (v.charAt(0)=="A" && v.charAt(v.length-1)=="B") total++;

}

event.value = total;

You can easily adjust this code for the other total fields by changing the strings in line #5 to "A"/"A" and "B"/"A" for Total1 and Total3, respectively.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 04, 2019 Jun 04, 2019
LATEST

Awesome, thanks!

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 04, 2019 Jun 04, 2019

Nothing to do with programming, it's just the the way it's listed on the form. Unit A, but they have it listed as A**A. So I wanted the option for users to input it either that way, AA, or A-A for unit "A**A". I didn't create the original form. I agree the ** don't make sense.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines