Trouble Using Matcher class for parsing

Hello,
I am trying to parse urls (along with their <a> tags) out of web page source code.
I changed the web page source code to all be one line.
Here is my code:
     public void findURLs(String inFeed)
          // Looks for a pattern that consists of
          // <a href="something">something</a>
          Pattern urlPattern = Pattern.compile("<a href=\".*\">.*</a>", Pattern.CASE_INSENSITIVE);
          Matcher matcher = urlPattern.matcher(inFeed);
          while (matcher.find())
               System.out.println(matcher.group());
     }The inFeed is a long string of HTML such as
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> </head> <body> <p>I will complete this soon.</p> <p>*Resume*</p> <p>*Something*</p> </body> </html>
The expected output is
Resume
Something
However, the matcher.group() method instead returns
Resume*</p> <p>*Something*</p> </body> </html>
I am pretty sure the regular expression is correct since I tried it using grep and it didn't have a problem.
Can somebody shed some light on this?

Well, since .* includes everything including a closing A tag... I'm a bit surprised that it returns the stuff trailing the last A tag as well, but then, it doesn't matter. Try looking for everything that isn't a '<' instead of '.'.

Similar Messages

  • Is anyone else having email problems such as apps exiting in the middle of an email? It may be a wireless issue. I use First Class for work and yahoo email for personal. I will be in the middle of typing a long email and the app just quits, all data lost.

    Is anyone else having email problems such as apps exiting in the middle of an email? It may be a wireless issue. I use First Class for work and yahoo email for personal. I will be in the middle of typing a long email and the app just quits, all data lost.

    Have you tried restarting or resetting your iPad?
    Restart: Press On/Off button until the Slide to Power Off slider appears, select Slide to Power Off and, after the iPad shuts down, then press the On/Off button until the Apple logo appears.
    Reset: Press the Home and On/Off buttons at the same time and hold them until the Apple logo appears (about 10 seconds). Ignore the "Slide to power off"

  • How to use multiple classes for each form

    Hi,
    I have created two forms using screen painter and now i want to use different classes for these two forms .
    I have declared the Sbo Connection in main class i.e. Set Application ,Connection Context() but while connecting to other classes
    for executing the code for that form SAP is not connected to that class.How to use multiple classes functionality i don't able to
    do that.Please provide some sample codes for that as it will be more helpful for me to understand.
    Thanks & Regards,
    Amit

    Hi Amit,
    In fact, its more advisable to use separate classes for every form that you use.  Have one common class, say, for eg., clsMain.cs which has all the connection and connectivity to other classes, wherein, the menu event and item event of this main class, will just be calling the menu / item event of other classes.
    The individual functionality of the child classes will be called from the item / menu event of the respective classes.
    Item event in clsMain.cs will be as below.
    private void oApplication_ItemEvent(string FormUID, ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent)
                SAPbouiCOM.Form oForm;
                BubbleEvent = true;
                try
                    if ((pVal.FormTypeEx == "My_Form1Type") && (pVal.EventType != SAPbouiCOM.BoEventTypes.et_FORM_UNLOAD))
                        oForm = oApplication.Forms.GetForm("My_FormType", pVal.FormTypeCount);
                        NameSpace.Repots.ClsForm1.ClsForm1_ItemEvent(oApplication, oCompany, oForm, ref pVal, ref BubbleEvent);
                    if ((pVal.FormTypeEx == "My_Form2Type") && (pVal.EventType != SAPbouiCOM.BoEventTypes.et_FORM_UNLOAD))
                        oForm = oApplication.Forms.GetForm("My_FormType", pVal.FormTypeCount);
                        NameSpace.Repots.ClsForm1.ClsForm2_ItemEvent(oApplication, oCompany, oForm, ref pVal, ref BubbleEvent);
    Now, in the individual classes, you can have their respective item events, which will be called from the main class, and the respective functionalities will occur.
    Hope this helps.
    Regards,
    Satish.

  • Passing argument to, when using one class for multiple assets

    I had a class that I was passing a simple argument to like so:
    var quiz_1_2:CaseStudyQuiz = new CaseStudyQuiz(2);
    addChild(quiz_1_2);
    I now would like to use this class for multiple MCs in my library. I thought I could let Flash create a class for each of them and specifying the CaseStudyQuiz class as the Base class. When I do that, I get the following error:
    1136: Incorrect number of arguments.  Expected 0.
    Obviously this is because the class created by flash does not except an argument. Does that mean, I would have to create a seperate class for each of the movies that use that class? And if so, what would I have to do in that class for it to except the parameter and pass it on to my base class?
    Thank you very much for any help with this!!!

    use the super() function and pass your parameter.  but you still might get a runtime error but i don't think that will cause a problem.

  • How different Web Services can use a class which parses an XML file

    I am using RAD6.1 for developing and deploying web services.As I am using 15 web Services which uses a common class which is used to parse an XML file.As this XML file should be parsed only once and should be used by all the web services.I have made this common class as Singleton but it works as singleton for only one webservice and for other web service again it is parsing the xml file.I want to parse this xml file only once and used by all the web services.In my case tis file is parsed 15 times for 15 web services, but it should be parse donly once and used by all 15 services.Please give me the solution.
    Thanks and Regards
    Sayeeduzzaman

    Hello,
    the 15 Webservices should have a static attribute which contains the xml:
    private static String xml;
    then initialise the xml like this:
    if (xml == null)
    xml = parseIt();
    else
    //do nothing, XML already initialised!
    }

  • Using FileIOInteractionSpec Class For Moving File using File Adapter

    Hi All,
    I am tring to use FileIOInteractionSpec class to move a file from one location to another. The problem is that I am not able to override its properties from BPEL, here is how the FileAdapter.jca file looks like which moves the file from one location to another:
    <adapter-config name="MoveFileService" adapter="File Adapter" wsdlLocation="MoveFileService.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/FileAdapter"/>
    <endpoint-interaction portType="MoveFile_ptt" operation="MoveFile">
    <interaction-spec className="oracle.tip.adapter.file.outbound.FileReadInteractionSpec">
    <property name="DeleteFile" value="true"/>
    <property name="PhysicalDirectory" value="C:\FileRead"/>
    <property name="FileName" value="dummy.txt"/>
    </interaction-spec>
    </endpoint-interaction>
    *<endpoint-interaction portType="MoveFile_ptt" operation="Move">*
    *<interaction-spec className="oracle.tip.adapter.file.outbound.FileIoInteractionSpec">*
    *<property name="Type" value="MOVE"/>*
    *<property name="SourcePhysicalDirectory" value="C:\FileRead"/>*
    *<property name="SourceFileName" value="dummy.txt"/>*
    *<property name="TargetPhysicalDirectory" value="C:\FileRead2"/>*
    *<property name="TargetFileName" value="dummyCopy.txt"/>*
    *</interaction-spec>*
    *</endpoint-interaction>*
    </adapter-config>
    In the above code, I have hard-coded the values, and it works fine like that.
    However, when I try to override these values by defining properies in BPEL invoke's tag, the values are getting passed as null.
    Here is the invoke tag code, tried the following 2 combinations:
    <invoke name="InvokeFileMove"
    inputVariable="InvokeFileMove_MoveFile_InputVariable"
    partnerLink="MoveFileService" portType="ns1:MoveFile_ptt"
    operation="Move" bpelx:invokeAsDetail="no">
    <bpelx:inputProperty name="jca.file.SourcePhysicalDirectory" value="C:\FileRead"/>
    <bpelx:inputProperty name="jca.file.SourceFileName" value="dummy.txt"/>
    <bpelx:inputProperty name="jca.file.TargetPhysicalDirectory" value="C:\FileRead2"/>
    <bpelx:inputProperty name="jca.file.TargetFileName" value="dummyCopy.txt"/>
    </invoke>
    And
    <invoke name="InvokeFileMove"
    inputVariable="InvokeFileMove_MoveFile_InputVariable"
    partnerLink="MoveFileService" portType="ns1:MoveFile_ptt"
    operation="Move" bpelx:invokeAsDetail="no">
    <bpelx:inputProperty name="SourcePhysicalDirectory" value="C:\FileRead"/>
    <bpelx:inputProperty name="SourceFileName" value="dummy.txt"/>
    <bpelx:inputProperty name="TargetPhysicalDirectory" value="C:\FileRead2"/>
    <bpelx:inputProperty name="TargetFileName" value="dummyCopy.txt"/>
    </invoke>
    These four properties are not visible in Invoke -> Properties tab as well.
    Could you please suggest how can I override the jca's values for FileIOInteractionSpec class?

    I have successfully used this API and it works fine.
    Try to use variables which contains values like "dummyCopy.txt" etc.
    Here is what I used :
    <bpelx:inputProperty name="jca.file.SourceDirectory"
    variable="inputDirectory"/>
    <bpelx:inputProperty name="jca.file.SourceFileName"
    variable="inputFileName"/>
    <bpelx:inputProperty name="jca.file.TargetDirectory"
    variable="destinationDirectory"/>
    <bpelx:inputProperty name="jca.file.TargetFileName"
    variable="inputFileName"/>
    Pass approppriate values into the above given variables and try.
    Hopefully it should work.
    Let us know, how it goes !
    <Puneet/>

  • How to set username and password when using Proxy class for SOCKS5?

    Hi all,
    I use the proxy class for SOCKS5, so need to set username and password, I don't find where can I set the value. whether the API support it.
    Thanks in advance!

    System.getProperties().put("proxySet", "true");That does nothing. Remove.
    System.getProperties().put("proxyHost", getProxyHost());
    System.getProperties().put("proxyPort", getProxyPort());You should be setting socks.proxyHost and socks.proxyPort here.
    System.setProperty("java.net.socks.username", getSOCKSUsername());
    System.setProperty("java.net.socks.password", getSOCKSPassword());
    Authenticator.setDefault(new ProxyAuth(getSOCKSUsername(), getSOCKSPassword()));You either need the first two lines or the third, not both. See the last link posted above.
    1. After I set the value, I connect internet by proxy, how the proxy server knows the values?Because Java tells it during the SOCKS handshake.
    2. In my app, I just set the values in the system properties, then JVM does remaining work? Remaining work is not concerned?Should be OK unless you have to connect to a different SOCKS proxy from the same JVM, but that kind of thing is problematic anyway due to the curious Authenticator design which is set globally, not per connection as you might expect.

  • Using a class for validation

    I have a form that collects some info (let's say username and email address). I wrote a Java class for it that has the set and get methods. I am wondering how I can redirect to the page from the class itself in case something fails (like an '@' not in an email address etc.). Also, if that's possible, how can I tell the original page that the validation failed so I can print a nice red error message?
    Thanks!

    Just submit the form through a servlet and let it handle all the business logic. Let the validator throw an exception or so and then let the servlet or bean handle it and let the JSP display a message based on that condition.
    You may find this article useful to get some ideas of how to layer things properly and get it all to work together: [http://balusc.blogspot.com/2008/07/dao-tutorial-use-in-jspservlet.html].

  • Using Custom Legend without Using Legend Class for line Chart

    Hi ,
    I m trying to create legend with checkbox without using Legend class of flex, but problem is that how to use itemrenderer of lineseries in the legend.
    My requirement is like this:

    my problemb is how to get that shape and use in container .
    i am using hbox in that i have checkbox ,label and i tried to use Image or IFlexDisplayObject but i am unable to assign that renderer to either  image or IFlexDisplayOBject nothing isd working.
    any suggestion for what component i shall use to assign the itemrenderer of lineseries.
    Thanks for replying

  • Using same class for duplicate movieclips

    Hello everyone,
    I have created an external class for a particular movieclip and I would like to link a duplicated version of this movieclip to the same class file.
    Problem is I can't seem to do it. Even if I state the class as the BASE class of the new movieclip and create another random class name for it.
    Is there a way I can get around this so I can assign my duplicated clip the same class name ??
    Thanks in advance
    Martin

    well first off I get 'Neutralization of a marked function override' which is apparently caused by the 'stop();' on the first frame of the new symbol.. when I remove that I get 'Number of arguments incorrect.. 2 expected' on the super line
    I have two variables that I'm passing to Animal which are :-
    public function Animal (frameNumber:Number, level:Number)
    Do I need to reflect this in my code ?
    package  {
        import flash.display.MovieClip;
        public class Animal1 extends Animal {
            public function Animal1():void {
                super();

  • Trouble using match

    While using MATCH, all my songs 'disappeared' from my iTunes library.Last week I had over 11035 songs. This week using MATCH, that has dropped down to 10949.of those, not all are available from the cloud even though they are songs on itunes. Some of the songs that don't match were even purchased from itunes. How can I get all these missing songs into the cloud so I can access them from all my computers and devices? They will not even play in iTunes anymore, only in Windows Media Player.On top of that, some of the songs are only 20-30 seconds in iTunes but are the full file, I won them and they play the full version of the song in WMP. Any ideas/ suggestion on how to remedy these?
    Thanks

    Are the files still physically on the computer, or have you deleted them? Either way you should disable iTunes Match, quit iTunes, re-launch it and re-enable the service.

  • Design question about when to use inner classes for models

    This is a general design question about when to use inner classes or separate classes when dealing with table models and such. Typically I'd want to have everything related to a table within one classes, but looking at some tutorials that teach how to add a button to a table I'm finding that you have to implement quite a sophisticated tablemodel which, if nothing else, is somewhat unweildy to put as an inner class.
    The tutorial I'm following in particular is this one:
    http://www.devx.com/getHelpOn/10MinuteSolution/20425
    I was just wondering if somebody can give me their personal opinion as to when they would place that abstracttablemodel into a separate class and when they would just have it as an inner class. I guess re-usability is one consideration, but just wanted to get some good design suggestions.

    It's funny that you mention that because I was comparing how the example I linked to above creates a usable button in the table and how you implemented it in another thread where you used a ButtonColumn object. I was trying to compare both implementations, but being a newbie at this, they seemed entirely different from each other. The way I understand it with the example above is that it creates a TableRenderer which should be able to render any component object, then it sets the defaultRenderer to the default and JButton.Class' renderer to that custom renderer. I don't totally understand your design in the thread
    http://forum.java.sun.com/thread.jspa?forumID=57&threadID=680674
    quite yet, but it's implemented in quite a bit different way. Like I was saying the buttonClass that you created seem to be creating an object of which function I don't quite see. It looks more like a method, but I'm still trying to see how you did it, since it obviously worked.
    Man adding a button to a table is much more difficult than I imagined.
    Message was edited by:
    deadseasquirrels

  • Using base classes for common attributes

    Can TopLink handle use of non-mapped abstract base classes? There are a number of fields that are common to each and every one of my domain objects which, following good OO design principals, are moved up to a common superclass. So I have:
    public abstract class AbstractDomainObject
    private Integer id;
    private Date dateCreated;
    private Integer creatorId;
    private Date dateModified;
    private Integer modifierId;
    // ... appropriate attribute accessors
    Then a concrete class which gets mappped in Workbench:
    public class Address
    extends AbstractDomainObject
    ... specific attributes
    I tried mapping all the specific attributes explicitly defined in the Address class and then using "Map Inherited Fields > To SuperClass" in Workbench. However, when attempting to test my mappings in the SessionConsole, only the attributes explicitly defined on Address are present in the SELECT clause.
    Can what I am trying be done? If so, how?

    Steve,
    What you are trying to do is very common and the process you described is exactly how map the class. I will summarize a couple of points for mapping this scenario.
    1. You only need to import Address in and map it. If AbstractDomainObject is imported into the Mapping Workbench make sure that it is disabled. The abstract class is only required on the project's CLASSPATH.
    2. You should not enable inheritance for the Address class. Inheritance is for situations where the abstract base class has its own independent table. I am assuming that your Address class has its own table that contains fields for all of the attributes it needs along with those of the abstract base class.
    Assuming these conditions are met then TopLink will work fine with you Address class just as if it had all of the inherited attributes directly.
    If you are still having trouble take a look through your generated project (XML or Java) to ensure that mappings exist in Address for All attributes. If the project looks good then I am at a loss. Customers have been using this pattern of use for over 5 years with TopLink and Java inheritance.
    Cheers,
    Doug

  • Trouble to include classes for MIDP2.0

    Hello,
    I've troubles with my first project.
    I wanted to create a little game for my siemens s55. It all works on the Wireless Toolkit. But for the s55-Emulator I need the javax/microedition/lcdui/game.* classes. I've once written it with these classes(there are more possibillities).
    Is there a possibillity to include these in the final *.jad files for the mobile interface?
    I've tried it putting all these calsses in the res folder of my project directory, and the s55 emulater reports me:
    "Native method 'javax/microedition/lcdui/game/GameDeviceCaps::init' not found".

    Sorry to inform you that the S55 is an MIDP 1.0 device, and the game package is part of MIDP 2.0, so you won't be able to use it. You'll need to rewrite the game in MIDP 1.0. :(
    shmoove

  • Can i use a class for this or do i need to use a type def

    what i am trying to do is have a parent cluster witch has a file name and some free space to put is children's data in with decorations at the bottom.
    i then need to have a child with a graph in the middle blank space of the parent.
    i also need to have another child with a table in the middle blank space.
    can i do this with classes or do i need to use typdefs.
    tks in advance

    Hello vivi,
    I'm not entirely sure what you mean.  The classes that you create in LabVIEW 8.2 are meant to be containers for data and methods, not displayable items.  Even though a class's private data members are defined in a cluster, you can't think of a class and a cluster as the same thing.  A cluster is an object that you can use to bundle different kinds of information together.  You can also design a cluster to be displayed on a front panel.
    If you want to use LabVIEW's object oriented features, I would suggest creating a class which stores your objects data (non displayable).  You could then create a method on your class to convert some of its internal data into a cluster which can be displayed to the user.
    Regards,
    Justin D
    Applications Engineer
    National Instruments

Maybe you are looking for