Array of strings to multiple string controls

I'm parsing a query response from a noise generator - it comes back as "1234,2345,3456,4567,5678,6789,7890,8901,9012,0123".  Basically, one long string of 10 4-digit values, comma separated, is returned.  Using the string Match attern (in a loop) I've parsed the large string into an array of 10 4-digit strings without commas.  Now, I have 10 indicators (each representing one of the 10 values) that I want this info to go into.  I could (one-by-one) stuff the array information into each of these indicators.  However, I'm wondering if there is a loop-ish approach where maybe all the indicators get grouped into a cluster and the cluster order is the iterator that indexes into the source array. 
Any suggestions?

Maybe you can just use a plain array indicator directly. Anything wrong with that? It reduces diagram clutter! You can always add free text labels outside as fake element labels.
If your indicators are scattered all over the front panel, use a single "index array", resized to 10 elements.
The attached example (LabVIEW 8.0) shows both ways.
LabVIEW Champion . Do more with less code and in less time .
Attachments:
StringParsing.vi ‏16 KB

Similar Messages

  • Programmatically changing string text color in an array of string indicators

    Hi,
    I have an array of string indicators and I'm trying to format certain values different colors.  While I'm able to do this on a single string indicator I can't figure out how to handle the indexing of the array.  I have seen several examples with array of clusters but I am unable to translate to array of string indicators.
    Any help would be appreciated.
    Regards,
    ShotSimon
    Attachments:
    Changing text color in an array of string controls.vi ‏9 KB

    Instead of a string array, where all elements have the same format, you should use a table, which basically behaves as a 2D string array. But there, you can adjust all text attributes (if you are using LV 8.x). See this thread
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        

  • Would like some help converting an array of strings into multiple parsed string arrays

    Hello everyone.
    this is a very novice question and I sincerely apologize for that, but i need some direction!
    i have an array of strings:
    (('J01',), ('0', '0', '0', '1'))
    (('J02',), ('0', '1', '0', '1'))
    (('J03',), ('0', '0', '0', '0'))
    ect...
    i would like to know what are some of the best ways to gain access to this information (aka, parse it). The field lengths are not static and all those ones and zeros could very possibly be two digits at times (0 = off state, 1-100 = on state), so simply pulling characters out of a given position of the string will not always work.
    what i would like to achieve is to make either separate arrays for each desirable element, eg:
    array one:
    J01
    J02
    J03
    array two:
    0
    0
    0
    array three:
    0
    1
    0
    and so on.
    or maybe even a matrix (if that’s feasible).
    other than that I am totally up for suggestions!!
    thank you very much,
    Grant.

    Assuming fixed structure (not necessarily length of the different numbers or names).

  • String of letters to 1-D Array of strings for spreadsheet

    What I would like to do is be able to take this string as it is the A's and B's that are being generated as the program runs,
    I would like to take this string and get it into file in delimited tabs just as the numbers are. If there is a created 1-D array of
    strings that works, but that is controlled on the front panel, I would like to create this from data that is comming in. In other words
    I am stuck on how to create a 1-D array of Sting from the string value comming in. I want to do this so that I can get all the different
    values A's or B's into the different tab fields. As it is they are comming all up in the first column and not "tabbing" Please see the
    attached file in the rows 5 an
    d 7.
    Thanks,
    Brian
    Attachments:
    Array_of_strings_to_spreadsheet2.vi ‏28 KB
    Turn_data1.xls ‏1 KB

    Brian
    You need to convert your string to contain single tabs as separator. The problem is that your string is "dirty", i.e. it contains a variable amount of spaces to seperate the items. If you strictly had single space separators, you could just replace all spaces with tabs.
    "Scan string for tokens" by default does not allow empty tokens, thus takes care of the multiple spaces.
    The attached simplified code assumes a fixed number of items (12), if this is a variable, you need to use a while loop and sense the end of the input string. Let me know if this is clear.
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    StringToArrayofstringsToSpreadsheetstring.vi ‏21 KB

  • Array of strings strict type def not updating

    I have defined an Array of Strings (ctrl) as a strict type def. When I update this array (add another string to it) the values don't update where this control is used. Can someone please explain why this is occuring.

    Only the size of the array _shell_ is locked, not the size of the array data. The array shell is a window into the data of the array control. If you change the value of the index display you will change the indices visible inside the array shell.
    -Jim

  • How to use string control as terminal window

    Hello All
    I am trying to create a terminal window in my VI and to do this i have a string control and a string indicator.
    I want the user to be able to write a command in the terminal and when hitting enter the control should update, but not before! I would
    like the user to be able to enter multiple commands without having to re-click the control with the mouse, so it has to stay in the
    control window. 
    The output from this string control is input to a invoke node to an external motor controller, which replies with a string input to the string indicator.
    Tried to do some event case, but not quite sure how I am going to detect only the enter command.
    Any ideas how to preceed?
    Thanks
    Regards
    Tommy
    Solved!
    Go to Solution.

    Yeah, in your event structure, look for an event of your string control called "key down"...on the left, there are several parameters coming up (char, vkey etc.) where you can use for example the char to look for char=13 (return).
    look here: http://zone.ni.com/reference/en-XX/help/371361B-01/lvprop/control_key_down/
    good luck
    christian 
    THINK G!! ;-)
    Using LabView 2010 and 2011 on Mac and Win
    Programming in Microsoft Visual C++ (Win), XCode (Mac)

  • How to accept only 4 or less hex characters in string control

    Hi,
    I want to accept only up to 4 hex characters in a string control. I dont want to use "hex display" property.
    How is it possible? I have String control key down? event in event case, I tried it with regular expressions [0-9a-fA-F]{4} but then I have to accept left, right, delete, backspace, home keys as well.
    Solved!
    Go to Solution.

    I agree with Dennis that you seem to be making life difficult for yourself.  However, you did ask the equivalent (as I understand it) "How can I allow the user to type "1", "2", "Ctrl-A", "B", "Ctrl-C", "D" and get this recognized as the string "12BD".  If you really want to do this, here is one way (I was lazy and left the answer as an array of 4 1-character strings).  I use PlatMods to exclude having any "modification" key other than Shift down, convert the numeric Char into a string, then count acceptable Hex letters and conditionally add them to the output array, stopping when I have 4 characters. 
    Bob Schor

  • Using JNI to pass an array of Strings to C and back from C

    I have some C code that I want to integrate with a new Java application and I need to be able to pass an array of strings to the C program and then the C program needs to be able to build an array of strings that is passed back to the Java program. I've got the first part working so that I can pass an array of strings to the C program and display them, but I can't figure out how to build the strings in C so that that when Java gets back control, it can display the strings tha were built in the C program.
    Has anyone done this? Do you have some sample code?

    I have a program which is written in C. I can give you the whole project as it is in a zip file. You'll need VC to work with it. By the way, I am using Windows for development. Should you need it, I'll mail you the same. Give me your mail address.

  • How do I pass an array of strings? (Help Me... Please!!! .Read Me....)

    Dear All.
    Help Me...
    English is not very good. Google translator is used.
     How do I pass an array of strings?
    Please refer to the VB program
     ===========================================
    Private Sub m_btn_Click()
        Dim nReturn As Long
        Dim sPpid As String
        Dim sMdln As String
        Dim sSoftRev As String
        Dim nCount As Long
        Dim saCCodes(2) As String
        Dim naPCount(2) As Long
        Dim saPNames(10) As String
        sPpid = "PPID001"
        sMdln = "Mdln"
        sSoftRev = "Rev001"
        nCount = 2
        saCCodes(0) = "1"
        naPCount(0) = 5
        saPNames(0) = "Param001"
        saPNames(1) = "Param002"
        saPNames(2) = "Param003"
        saPNames(3) = "Param004"
        saPNames(4) = "Param005"
        saCCodes(1) = "2"
        naPCount(1) = 5
        saPNames(5) = "Param006"
        saPNames(6) = "Param007"
        saPNames(7) = "Param008"
        saPNames(8) = "Param009"
        saPNames(9) = "Param010"
        nReturn = m_XGem.GEMReqSend(sPpid, sMdln, sSoftRev, nCount, saCCodes(0), naPCount(0), saPNames(0))
        If (nReturn = 0) Then
            Call Me.AddMessage("[EQ ==> XGEM] GEMReqSend successfully")
        Else
            Call Me.AddMessage("[EQ ==> XGEM] Fail to GEMReqSend (" & nReturn & ")")
        End If
    End Sub
    =================================================
    nCount, naPCount enough saCCodes, saPNames value must be sent.
    How to handle an array of strings in LabView is impatient.
    I want to VB program implemented in LabView.

    Have you actually tried to right click on the according node parameter and select Create->Constant or Create-Control??
    And I don't see any string array in the parameter list. That are all simple strings and the VB code in your first post clearly shows that the call to the function only indexes the first element of those arrays to be passed to the function, not the entire array.
    If the function really reads arrays despite being declared as only taking strings then it is using some weirdo VB trickery and there will be no way to replicate that in LabVIEW.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • How can i combine an array of string and an array of integers ?

    i have an array of string data [to be used as header], and an array of multiple column integer vakues;i need them together in one file. 
    Am not able to combine them so that i can write them into a single file.
    Solved!
    Go to Solution.
    Attachments:
    string file input.txt ‏1 KB
    Test build_1.vi ‏13 KB

    There are a few ways you can do this.  What I recommend is:
    Open the file
    Use the Array to Spreadsheet String to turn your headers into a single string
    Write this to the file.
    Use the Array to Spreadsheet String to turn your numeric data into a single string
    Write this to the file.
    Close the file
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • 2D array of string to 2D array of void

    I'm trying to wire the connector pane of my sub-vi such that one of its inputs is a 2-D array of string which I will then use in the subvi. What I did was place a 2-D void array on the front panel as a control and linked it to the connector pane. When I try to wire 2-D array of string to this input on my subvi, it gives an error since the souce is 2D array of string and the sink is 2D array of "void."
    How can I simply create an array of  2D string input for my subvi so that I can wire any 2D array of string and have it be accepted by the subvi?
    Solved!
    Go to Solution.

    Maybe this was just one of those things that didn't click earlier, but if you never heard of this technique I'd recommend checking out some free training.
    NI Learning Center
    NI Getting Started
    -Hardware Basics
    -LabVEW Basics
    -DAQ Application Tutorials
    -cRIO Developer's Guide
    3 Hour LabVIEW Introduction
    6 Hour LabVIEW Introduction
    Self Paced training for students
    Self Paced training beginner to advanced, SSP Required
    LabVIEW Wiki on Training
    Unofficial Forum Rules and Guidelines - Hooovahh - LabVIEW Overlord
    If 10 out of 10 experts in any field say something is bad, you should probably take their opinion seriously.

  • Simple question: Can you input an array of strings directly into your plot legend instead of "Plot 0", "Plot 1"......?

    I have an array of channel names for a simple vi I wrote and I want to input them into the plot legend.  I typically use ring controls to allow different users to select what they want to see, but beyond 3 or 4 it gets confusing.  Is there a way to take an array of strings and input them directly into the legend string slots using a property node?  I have spent hours searching to no avail.
    Thanks!!
    Adam

    Yes, of course there is! Try this:
    Message Edited by altenbach on 05-01-2009 08:45 PM
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    PlotNamesII.png ‏7 KB

  • How much is the maximum number of byte that a string control can hold?

    And also if the the number of byte sent to a string control is beyond that limit, will the string control discard that data?

    From App Note 154:
    "LabVIEW stores strings as a pointer to a structure containing a 4-byte length value followed by a 1D arrays of byte integers (8-bit characters)."
    The 4-byte value is the same size as a U32, which has a range of 0 to 4,294,967,295. So, your string can have up to 4,294,967,295 characters. If you have the memory
    What does a control do if you exceed that? I don't know. I don't have enough RAM to try it and see.

  • How to declare and initialize a STRING ARRAY (assign strings to array elements)

    How to declare and initialize a STRING ARRAY (assign desired strings to elements of an array, for example "abc", "def", "ghi", "jkl", etc.) in LabVIEW? I saw a "string array" block in help, but could not find it in the function palette. Does a spreadsheet string have to be in a file (or can it be in a string constant block)? Thank you.

    Hi,
    you can do it in several ways:
    1. Direct way: Create string array control on front panel and type strings in its elements
    2. Programmatically 1: Create string array indicator (or local variable of control), right click on it in block diagram, select "Create constant" from drop down menu. The array constant will appear. Now type values in this constant's strings
    3. Programmatically 1: Use "Build array", "Replace array subset", "Insert into array" or "Initialize array" functions from "Functions->Array" palette.
    And of course you can combine all of these methods.
    Good luck.
    Oleg Chutko.

  • On-Screen Keyboard and a String Control

    I am experiencing some odd behavior when I use the On-Screen keyboard (OSK) and a string control.
    I am developing a application that will need to use the OSK to enter in some data on a touch screen monitor with no physical keyboard. I have a Event-Driven State Machine set up to the Key Down event when a word/characters are entered and the user presses the Enter Key on the OSK. I noticed if I probe the VKey wire wuen I press the Enter Key on the OSK, it comes across as a Return press. No big deal I thought, just see if the Return Key is pressed and continue on.
    When I went to test my program, I noticed that my values were displaying as if nothing was entered. Digging a little further, I noticed that my original data is still there if I press the Backspace Key and remove the Return command. Probing the string wire within the string control indicates that that the value comes back as a empty string in my string control even though my entire string is physically still there. I can press the backspace key (deleting the carriage return) and see my original text. What I think is happening is when I press the Return Key on the OSK, it inserts something and moves my text either up or down and when I use the property node to extract the data within the string control, I get a empty string.
    How have you gotten around this? I'd like to hear your solutions.
    Solved!
    Go to Solution.

    Since you marked Jarle's message as the solution, I hope it means your happy and he's helped you solve your problem.
    I had never seen the OSK app before.  It looks like it can be very useful, but these other issues like how to programmatically get into it, or out of it with a task kill seem like they are a bit of a hack to work with something that shows so much promise.
    If these issues are too big, consider making your home pop-up keyboard as a LabVIEW VI.  It would be a little bit of work, but not so bad.  I've made a pop-up numeric keyboard that I've used in a few apps of mine.  Of course that is fewer keys to layout and deal with.  And I didn't need decimals for what I was doing so I didn't have to program that which adds a little complication.
    A pop-up keyboard might actually be easier, other than having 3-4 times the number of keys depending on how many symbols you need to deal with, and if you need to deal with CAPS, or CAPS lock or whatever.
    There is also a chance that someone may have done something already.  A google search might find something.  It is likely in the NI community if it exists.  If you can find something that works or is close to what you want, it might be better than using this OSK executable.
    Just some ideas to toss out there.

  • Get numerical values from 2D array of string

    Hello! 
    I start by saying that I have a base knowledge of LabView. I'm using LabView 2011. I'm doing some communications test via Can-Bus protocol. As you can see in pictures of the block diagram and of the front panel that I've attached I'm using "Transmit Receive same Port" LabView example. It works very good but I would need to insert the 8 data bytes that I receive from the server in 8 different numerical variables so that I could use them to make some operations. How can I get numerical values from the 2D array of string that I attached? 
    Every example that you can provide is important! 
    Thank you very much! 
    Attachments:
    1.jpg ‏69 KB
    2.jpg ‏149 KB

    Hi martiflix,
    ehm: to unbundle data from a cluster I would use the function Unbundle(ByName)…
    When you are new to LabVIEW you should take all the FREE online resources offered by NI on their website!
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

Maybe you are looking for

  • Query too slow

    Hi All, I am firing the following query in a view to fetch data. But the query is taking too much time to execute. Iam using oracle8i. Please let me know if there are any suggestions on this query. select MWN_VIEW.* from select distinct pre.MERCHANT_

  • Motu firewire daisy chain with logic?

    Actually 2 questions: 1. I have a motu 896 HD and a 828. I try to connect these with the firewire ports with no success. aggregate devices? Does not work for me...suggestions? 2. My 896 has main out 1-2 and analog 1-8. In logic the main out occupies

  • Deski Report cannot open in Infoview

    Hi we have recently upgraded BOXI R2 SP1 to SP5 and after upgrade we found that few deski reports are not opening from Infoview. It takes much longer time and eventually it times out.We tried changing the option in the report not to refresh when open

  • In ims5.2 hf1.21  notices ages  configuration no use why ?

    in my tcp_local channel configuration , i set notices keyword's value to 1 ,but in tcp_local queue , there are many messages sent before 2~7 days ago , some messages even sent before 15 days ago ,why ? in fact , the notices keyword can clear the grea

  • Custom dashboard view for multiple connected management groups

    Hi all, I've connected 2 scom management groups and I'm able to see the connected alerts in the alert views. Is it also possible to show those connected alerts in a dashboard view ? Because the Show Connected Alerts - button is not availble in dashbo